Itwill 학습내용 정리/2. Python 33

51장 Python 클래스 메소드 이해하기

51. 클래스 메소드 이해하기 예시 : gun = Gun() // #객체 = 클래스gun.shoot(3) // #객체.메소드[1,2,3,4,5] // #객체[1,2,3,4,5].count(2) // # 객체.메소드 예 : __init__이 필수는 아니다. class MyClass: # 낙타등 표기법(CamelCase) def sayHello(self): print('안녕하세요') def sayBye(self, name): print('%s! 다음에 보자!' %name) obj = MyClass() obj.sayHello() obj.sayBye('철수') ※ 리스트 변수의 유용한 메소드 메소드 설명 append() 리스트 끝에 새로운 요소를 추가 extend() 기존 리스트에 다른 리스트를 이어붙임 ins..

49장 Python Class 이해하기

49장. 클래스 이해하기 ※ 클래스란? 클래스(자료형) --> 객체 예 : 클래스인 설계도(붕어빵 틀)을 이용해서 객체(붕어빵)이 생성한다. ※ 클래스가 필요한 이유 예 : 더하기만 할 수 있는 계산기, 계산된 값 저장할 수 있을까?? result = 0 def adder(num): # 더하기만 하는 계산기 global result result = result + num return result print( adder(3) ) # 3 print( adder(4) ) # 7 print( adder(2) ) # 9 print( adder(5) ) # 14 - adder 함수 하나만으로는 결과값을 따로 유지할 수 없다. result1 = 0 result2 = 0 def adder1(num): # 더하기만 하는..

48장. Python에서 파일 열고 닫기

48장. 파일 열고 닫기 ( open, close ) ※ image 모듈 설치 Anaconda Prompt에서 image 모듈을 깔아 준다. ※ image 보는 방법 1. D:\\lena.png 를 준비한다. 2. 필요한 모듈을 import 한다. 3. 사진 주소를 입력하고 보는 명령어를 입력한다. ※ 코드 import PIL.Image as pilimg import numpy as np import matplotlib.pyplot as plt im = pilimg.open('D:\\lena.png') pix=np.array(im) plt.imshow(pix) plt.show(block=True) print("done")

45~47장 Python 모듈 import 이해하기

45장. 파이썬 모듈 import 이해하기 1 ※ import를 만나면 파이썬 모듈을 찾는 순서 1순위. 파이썬 내장 모듈 2순위. sys.path에 정의되어있는 디렉토리 46장. 파이썬 모듈 import 이해하기 2 ※ 형식 D:\\Vscode\\my_loc (패키지)D:\\Vscode\\my_loc\\cal_test3.py (모듈) cal_test 안에 plus, minus, multiply, divide (함수) ※ 만약 D:\\Vscode\\1126.py에서 cal_test3.py 모듈안에 있는 plus 함수를 사용하고 싶다면?? # step1 import my_loc.cal_test3 print(my_loc.cal_test3.plus(10,20)) #step2 import my_loc.cal_t..

44. Python package 이해하기

44장. 파이썬 패키지 이해하기 ※ 음악파일을 저장할 때 장르별로 폴더를 만들어서 별도로 저장하듯이 파이썬 모듈도 많아지면 폴더(모듈 꾸러미)를 별도 관리를 해야 관리가 편해진다. 여기서 폴더를 패키지라고 부른다. 내 VSCODE 디렉토리에서 my_loc 라는 폴더를 만든다. 그 안에 __init__.py를 하나 만들어 준다. (내용은 없는 경우가 많다.) ☆ 이 파일은 평범한 폴더가 패키지로 인정받기 위해 반드시 갖고 있어야하는 파일이다. 문제 165. __init__.py는 대게 비워두는 것이 보통인데 이 파일을 변경하는 경우는 언제인가? 답 : __all__=['cal_test3', 'oracle_func'] 위와 같이 __init__에 __all__을 설정해 놓으면 패키지의 모듈을 불러 올 때 명..

43장 Python 모듈 이해하기

43장. Python 모듈 이해하기 ※ 파이썬에서는 각각의 소스파일을 일컬어 모듈이라고 한다. 이미 만들어져 있고 안정성이 검증된 함수들을 성격에 맞게 하나의 파일로 묶어 놓은 것을 모듈이라고 한다. ※ 외부에 있는 모듈 함수를 사용하려면 이 모듈을 먼저 우리 코드를 실행하는 곳으로 가져와서 자유롭게 사용할 수 있도록 해야 하는데 이러한 일을 파이썬에서는 "모듈을 import 한다"고 한다. 예 : # 예 import time #time 안에 있는 모듈을 사용하겠다. print('5초간 프로그램을 정지합니다.') time.sleep(5) # time 안에 있는 모듈 중 sleep을 사용하겠다. print('5초가 지났습니다.') 문제 164. 사칙연산이 되는 계산기 모듈을 만드시오. 사용하고 있는 디렉토..

42장. Python 함수 리턴값 구하기 (return)

42장. 함수 리턴값 구하기 ( return ) ※ 모든 함수는 이름을 가지고 있다. 이름을 불러주면 파이썬은 그 이름 아래 정의되어 있는 코드를 실행한다. 단어 설명 호출 함수를 부르는 행위 호출자 함수를 부르는 코드 반환 함수결과를 돌려주는 것 예 : # 예 def initcap(val): return( val[0].upper()+ val[1:].lower() ) # 결과 print(initcap('smith')) # 호출자 # return이 없는 함수 param = 10 def func3(): global param param = 50 func3() # 실행하는 코드 여기에서 param에 50이 들어가게 된다. print(param) print(abs(-9)) # 9 절대값 출력하는 함수 문제 16..

41장. Python 지역변수와 전역변수 이해하기

41. 지역변수와 전역변수 이해하기 1. 지역변수 : 변수는 자신이 생성된 범위 안에서만 유효하다. 함수 안에서 만든 변수는 함수 안에서만 살아 있다가 함수 코드의 실행이 종료되면 그 생명을 다한다. 2. 전역변수 : 함수 외부에서 만든 변수는 프로그램이 살아있는 동안에 함께 살아있다가 프로그램이 종료되면 비로소 소멸한다. 즉 프로그램 전체를 유효점위로 가지는 변수이다. 예 : strdata = '전역변수' def func1(): strdata = '지역변수' return strdata print(func1()) # 지역변수 예시 : # 지역변수를 설명하는 코드 param = 10 def func2(param): param = 1 func2(param) print(param) # 10 or 1 ?? 예시..

Python 함수인자(매개변수) 이해하기

40. 함수 인자 (매개변수) 이해하기 - (고정) 매개변수 예시# 예 def add_txt(t1,t2 = '파이썬'): print(t1+' : '+t2) add_txt('베스트') # 베스트 : 파이썬 add_txt(t2 = '대한민국', t1 = '1등') # 1등 : 대한민국 add_txt('버스트','자바') # 버스트 : 자바 # 예 def add_txt(t1 = '쉬운',t2 = '파이썬'): print(t1+' : '+t2) add_txt('버스트','자바') # 버스트 : 자바 add_txt() # 쉬운 : 파이썬 add_txt('kkk') # kkk : 파이썬 - 가변형 매개변수 : 매개변수의 수가 유동적인 함수를 만들고 싶을 때 사용# 예 def merge_string(*text_lis..

Python 몬테카를로 알고리즘 구현

- 간단한 몬테카를로 알고리즘 구현 ( pi=3.14..... ) 출처 : http://phya.snu.ac.kr/~kclee/lects/lect06/lect06.htm 문제 155. 0에서 1 사이의 숫자를 random으로 생성하시오. 답 : # 155 import random x = random.uniform(0,1) y = random.uniform(0,1) print(x) print(y) 문제 156. 위의 코드를 for loop문을 이용해서 10000번 반복시키시오. 답 :# 156 import random for i in range(10000): x = random.uniform(0,1) y = random.uniform(0,1) print(x) print(y) 문제 157. x^2 + y^2