본문 바로가기
728x90

KDT/Python30

객체 지향과 클래스 1. 객체지향 프로그래밍 문제를 여러 개의 객체 단위로 나눠 작업하는 방식 객체(Object)란? 물리적으로 존재하거나 추상적으로 생각할 수 있는 것 중에서 자신의 속성을 가지고 있고 다른 것과 식별 가능한 것을 말함 클래스(Class)란? 객체를 생성하기 위한 일종의 설계도와 같음 클래스는 프로퍼티(필드), 메소드(함수)로 구성되어 있음 프로퍼티(Property): 데이터가 저장되는 곳 메소드(Method): 객체의 동작에 해당하는 실행 블럭 클래스와 객체 건축 설계도가 클래스라면, 실제로 지어진 건물은 객체 객체는 클래스로 생성되어 구체화된 인스턴스 실제로 클래스가 인스턴스화되어 메모리에 상주하는 형태를 객체라고 부름. 파이썬의 모든 변수와 함수는 객체로 저장 2. 클래스 만들기 class 클래스명:.. 2023. 3. 9.
랜덤 모듈 https://github.com/JHWannabe/KDT/blob/master/jhwannabe/python/Day05/15_Random_Module.ipynb 1. 랜덤(random) 모듈 임의의 숫자를 무작위로 반환 random() 0이상 1미만의 실수 중에서 무작위로 하나를 뽑아 반환 import random num = random.random() print(num) # 0.7639029319659469 num = num * 10 print(num) # 7.639029319659469 num = int(num) # 0~9까지 정수 print(num) # 7 num = int(num + 1) # 1~10까지 정수 print(num) # 8 # 1~10까지 정수 num = int(random.rand.. 2023. 3. 9.
콜백(Callback), 람다(Lambda) 함수 1. 콜백함수(Callback Function) 직접 호출하는 것이 아닌 다른 함수에 의해 호출되는 함수 def callback_func(func): # 함수의 주소값으로 탐색 for i in range(5): func() # 주소값의 함수 호출 def print_hello(): print('안녕하세요! Python!') print_hello() # 안녕하세요! Python! callback_func(print_hello) # 소괄호 x # 가능한 이유: 파이썬에서는 함수도 객체로 되어있기에 주소가 있음 # [3] callback_func(print_hello) # 소괄호 x # 가능한 이유: 파이썬에서는 함수도 객체로 되어있기에 주소가 있음 # 안녕하세요! Python! # 안녕하세요! Python! .. 2023. 3. 9.
변수의 범위(Local, Global) 1. 스코프(Scope) 변수의 접근할 수 있는 범위 local: 가장 가까운 함수안의 범위 global: 함수 바깥의 변수 또는 import된 module num1 = 10 # global variable (전역변수) def func1(): num2= 20 # local variable (지역변수) print(num2) print(num1) # 10 print(num2) # NameError: name 'num2' is not defined print(num1) # 10 func1() # 20 # locals(): 로컬 변수를 확인해주는 함수 # globals(): 글로벌 변수를 확인해주는 함수 def func1(): num2 = 20 print('num1 로컬 변수: ', 'num1' in local.. 2023. 3. 9.
사용자 정의 함수 1. 함수 변수 x, y에 대해 x값이 정해지면 그에 따라 y값을 결정하는 것 반복적으로 사용되는 가치있는 부분을 묶어서 하나의 집합으로 만듦 코드를 재활용하기 위한 목적 이름만 있는 함수 def 함수명(): 함수가 호출되면 실행할 문장 함수명() # 호출 def func1(): print('처음으로 만드는 함수!') func1() for i in range(5): func1() 매개변수가 있는 함수 def 함수명(변수1, 변수2, ...) 함수가 호출되면 실행할 문장 함수명(값1, 값2, ...) # 호출 def func2(num): print(f'입력받은 숫자는 {num}') func2(4) def func3(start, end): sum = 0 for i in range(start, end+1): .. 2023. 3. 8.
자료구조(Data Structure) - 세트(Set) 수학의 집합과 비슷한 형태로 순서가 없어서 어떤 값이 먼저 나올지 알 수 없고, 중복되는 데이터를 허용하지 않음 딕셔너리처럼 중괄호를 사용해서 선언하지만, key는 존재하지 않고 value만 존재함. 1. 세트(Set) Set 만들기 s1 = {1, 3, 5, 7} print(s1) print(type(s1)) li1 = [1, 3, 5, 7] s2 = set(li1) print(s2) s3 = {1, 3, 5, 3, 7, 9, 1} print(s3) li2 = [1, 3, 5, 3, 7, 9, 1] print(li2) s4 = set(li2) print(s4) print(3 in s4) # True print(8 in s4) # False print(8 not in s4) # True Set 함수 ad.. 2023. 3. 8.
728x90