Zerobase DS School
[데이터 취업 스쿨 스터디 노트] 파이썬 중급 1 - 4
Sehe_e
2024. 7. 8. 18:25
함수
# 내장 함수
print('Hello python')
numbers = [1, 2, 3, 4, 5]
numbers.sort()
numbers.reverse()
# 사용자 함수
def function1(num):
print(num)
function1(1) # 1
인수, 매개변수
# n -> 매개변수, m -> 인수(인자)
def function2(n):
print(n)
function2(m)
# 매개변수가 n개일 때, *을 사용한다.
def function3(*numbers):
for number in numbers:
print(number, end = '')
print()
function3(1, 2, 3, 4, 5) # 12345
return
# return 키워드는 함수 실행 결과를 반환한다.
def function1(num1, num2):
result = num1 + num2
return result
num = function1(5, 6)
print(num) # 11
# 함수가 return을 만나면 실행이 종료된다.
def function2(num):
if n % 2 == 0:
return '짝수'
else:
return '홀수'
result = function2(10)
print(result) # '짝수'
지역변수, 전역변수
# 전역변수 : 함수 밖에 선언된 변수, 어디에서나 사용 가능하지만 함수 안에서 수정은 불가
num = 10
def function():
print(num)
function() # 10
# global을 사용하면 함수 내에서 전역변수의 값을 수정할 수 있다.
def function2():
global num
num = 11
print(num)
function2() # 11
# 지역변수 : 함수 안에 선언된 변수, 선언한 함수 내에서만 사용 가능하다.
def function3():
num2 = 12
print(num2)
function3() # 12
lambda
# lambda 키워드를 사용하면 함수 선언을 보다 간단하게 할 수 있다.
def function(num, num2):
return num + num2
print(function(1, 2)) # 3
function = lambda num, num2 : num + num2
print(function(1, 2)) # 3
모듈
# 모듈 : 이미 만들어진 기능으로 import하여 간편하게 사용할 수 있다.
import random, datetime, collections, math ...
# 내부 모듈 : 파이썬 설치 시 기본적으로 사용할 수 있는 모듈
# 외부 모듈 : 별도 설치 후 사용할 수 있는 모듈
# 사용자 모듈 : 사용자가 만든 모듈
모듈 작성
# module_some.py
def function():
return 'hello python'
# new.py
import module_some
result = module_some.function()
print(result) # hello python
import, as, from
# import 키워드를 사용하여 모듈을 import한다.
import random, datetime, collections, math ...
# as 키워드를 사용하여 모듈 이름을 단축시킨다.
import collections as C
# from 키워드를 사용하여 모듈의 특정 기능만 사용할 수 있다.
import collections from deque
__name__
# __name__에는 모듈 이름 또는 '__main__'이 저장된다.
module_some.py -> __name__ = 'module_some'
패키지
패키지 : 모듈을 그룹으로 관리한다, site-packages에 있는 모듈은 어디서나 사용할 수 있다.
객체지향 프로그래밍
객체를 이용한 프로그램으로 객체는 속성과 기능으로 구성되어 있다.
객체(Object) = 속성(Attribute) + 기능(Function)
객체는 클래스에서 생성되며, 코드 재사용 용이, 모듈화에 좋다.
클래스(Class)
# 클래스는 class 키워드, 속성(변수), 기능(함수)를 사용하여 만들 수 있다.
class Car:
def __init__(self, color, length): # init 메소드 사용, 속성 생성
self.color = color
self.length = length
def do_stop(self): # 기능
print('STOP!!')
def do_start(self): # 기능
print('START!!')
car_1 = Car('red', 200) # class 선언으로 생성자 호출 -> 객체 생성
car_1.color = 'blue' # 객체의 속성값을 변경할 수 있다.
print(car_1.color) # blue
처음 파이썬을 배울 때 엄청 헷갈리고 어려웠던 클래스 개념까지 왔다.
다시 복습하면서 강의를 들으니 생각했던 만큼 어려운 개념이 아니여서 이번에는 확실히 이해한 것 같다.
내일의 학습 목표
파이썬 중급 5 - 7