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