프로그래밍/Python 15

생성자, 소멸자 (Constructor, Destructor)

생성자: 클래스의 개체가 인스턴스화될 때 실행되는 함수소멸자: 객체가 삭제될 때 실행되는 함수  생성자1)  __inti__() 메소드를 이용한다. 2) 객체의 초기화를 담당하며 클래스의 인스턴스가 만들어질 때 어떠한 속성을 가져야 하는 경우 생성자를 이용한다.   ex) 분모를 의미하는 변수는 0이 될 수 없다 등 기본 값이 필요한 속성이 있을 때 이용한다. 3) 생성자는 반환 타입이 없다.   소멸자1) __del__() 메소드를 이용한다. 2) 클래쓰의 쓰임이 다하면 소멸자가 호출된다. 객체의 소멸(리소스 해체 등)을 담당한다.

클래스와 객체

객체 지향 프로그래밍(OOP, Object oriented [rogramming)- 프로그래밍에서 필요한 데이터를 추상화시켜 상태와 행동을 가진 객체를 만들고 그 객체들 간 상호작용을 이용해 로직을 구성하는 프로그래밍 방법(객체의 상태와 행동을 구체화) >> 객체: 사물, 사람, 동물 등을 모두 객체라 할 수 있으며 상태와 행동이 묶인 것을 객체라 한다. 예를 들어 이름, 나이, 성별, 먹는 행위, 자는 행위 등을 합쳐 사람이라는 객체를 만들 수 있다.    클래스-  객체를 만들기 위한 틀이다. 붕어빵이라는 객체를 만든다면 붕어빵 틀이 클래스에 해당될 수 있다.클래스를 사용하려면 클래스 타입의 객체를 선언해야 한다. 이렇게 클래스에서 정의한 내용을 이용한 객체를 인스턴스라 한다. 클래스를 정의하는 것만..

python 규칙

C/C++은 주석처리할 때 // 를 이용하는데 파이썬은 # 을 이용한다.  출력은 print()를 이용한다. ()안에 큰 따옴표를 이용해 출력할 말을 입력해준다.ex) print("Hello world!")  명명 규칙1. 클래스는 각 단어의 첫 글자는 대문자로 한다. (Capwords 규칙)  2. 함수 이름은 모두 소문자로 한다.  들여쓰기- 들여쓰기는 코드를 그룹화하기 때문에 파이썬에서 매우 중요하다. 들여쓰기 하나  4개의 공백이다.  command line- command line으로 파이썬 프로그램을 실행할 수 있다. 터미널 또는 명령 프롬프트 창을 열어 파일이 포함된 디렉토리로 이동한다. 이후 'python 파일이름.py' 를 입력하고 엔터를 누르면 실행이 된다.

프로그램 구조, __name__과 main 함수

Hello World!를 출력하는 파이썬 프로그램이다. main 함수는 프로그램 작성시 기능을 담은 함수들을 수행시키기 위한 시작점이다. C/C++ 등 다른 언어에서는 프로그램을 실행하기 위해 main 함수가 반드시 필요하고 main 함수 없이는 프로그램을 실행시킬 수 없지만 파이썬은 필수가 아니다. 파이썬에서 __name__ 변수는 내부적으로 사용되는 특별한 변수이다. import로 모듈을 가져올 때는 __name__에 모듈의 이름이 저장되고 import가 아니고 모듈을 직접 실행시킬 때는(터미널에서 직접 실행) __name__안에 __main__이라는 값이 저장된다.>> if __name__ ==  '___main__'은 스크립트 파일이 메인 프로그램으로 사용될 때와 모듈로 사용될 때를 구분하기 위한..

람다 함수 (lambda functions)

람다 함수: 익명 함수 파이썬에서 일반 함수는 def와 사용자 지정의 이름으로 정의된다. 반면에 람다 함수는 이름 없이 lambda 키워드로 정의된다.   람다 함수는 여러 인수를 가질 수 있지만 표현식은 하나만 가질 수 있으며 일반적으로 한 줄의 코드로 나타낸다.  람다 함수를 사용하는 이유- 한 줄로 빠르게 함수를 작성하고 싶을 때- map(), filter(), apply()와 같은 다른 내장 함수와 결합하고 데이터를 필터링하려는 경우    람다 함수를 이용해 열을 수정한 예시이다.  데이터프레임 함수적용 pandas apply 사용법 및 apply lambda 설명 :: 존버력을 길러보자 (tistory.com) 데이터프레임 함수적용 pandas apply 사용법 및 apply lambda 설명p..

재귀

재귀: 자체 내에서 함수를 반복적으로 호출하는 프로세스  함수 안에서 자기 자신을 호출하기 때문에 재귀 함수이다.   - 재귀 함수는 재귀 단계와 베이스 케이스로 구성된다.  1) 재귀 단계- 예시의 else문의 코드는 함수를 호출하기 때문에 재귀 단계이다.  2) 베이스 케이스- if문에서 num이 1인 경우 factorial()을 호출하지 않는다. (무한 재귀가 일어나지 않는다.) 이렇게 베이스 케이스가 있으면 무한 재귀를 방지하는데 도움이 되고 모든 재귀 함수에서 베이스 케이스는 정의되어야 한다.     베이스 케이스 (if num==1)이면 재귀가 중단되고 최종 값이 출력된다.

함수

함수의 선언  - def는 함수를 선언하는데 사용되는 python의 키워드이다.- add_three는 함수의 이름- (num1, num2, num3)은 함수에 필요한 매개 변수- : 는 함수 본문의 시작을 나타낸다.- sun_three = num1 + num2 + num3 은 함수의 본문으로 앞에 들여쓰기가 되어있다.- return 은 함수를 종료하고 출력을 반환하는 키워드이다.   함수의 사용     매개 변수- 매개 변수는 함수 본문 내에서 지역 변수로 처리된다. 여기서는 language가 매개 변수이다.    인수- 함수에 전달되어 매개 변수로 사용할 수 있는 값이다. 아래의 예시에서 French가 인수이다.

Pass, Break, Continue

for 및 while 루프를 제어하는 방법- pass, break, continue  1) pass- 조건에 맞을 때 아무것도 실행되지 않는다.    2) break- 루프를 탈출, 종료한다. 조건에 맞을 때 루프가 반복을 중지하고 해당 지점에서 중단된다.    3) continue- 조건에 맞을 때 반복을 건너뛰고 그 다음 반복으로 이동한다. pass와의 차이점은 아무것도 하지 않는 동안 다음 번으로 넘어간다는 점이다.    - pass와 continue 차이 예시i가 2일 때 ready가 출력되고 아무 반응 없고 go, 2가 출력된다.  i가 2일 때 ready가 출력되고 continue로 인해 다음 턴인 3으로 넘어가 go, 2가 출력되지 않고 3으로 출력된다.  파이썬 pass와 continue ..