본문 바로가기

Python

(6) Python: 함수, 튜플, 딕셔너리

함수

> 함수를 사용하는 이유
1. 재사용성이 좋다
2. 유지보수가 편리하다
3. 가독성이 좋아진다

 

> 함수의 기본 형태
- 정의하기
def 함수이름(매개변수1, 매개변수2):
    명령블록

- 호출하기
함수이름(인자1, 인자2)

> 반환값이 있는 함수
- 정의하기
def 함수이름():
    명령블록
    return 반환값

- 호출하기
함수이름()

 

> docstring: 함수에 대한 설명문

"""
함수에 대한 설명
"""

 

>문자열 포매팅
->f를 앞에 두면 됨
->변수가 들어갈 자리에 중괄호로 변수를 감싸주면 자동으로 문자열 형태로 변환되서 들어감

 

 

 

튜플

> 튜플의 특징: 시퀀스 자료형 (순서가 있는 자료형) + 수정, 추가, 삭제가 불가능한 리스트(읽기 전용 리스트)
-> 메모리 사용이 효율적: 리스트는 메모리 공간이 바뀌는데, 튜플은 정해져있기 때문에 메모리 사용이 효율적이다
-> 읽기만 가능하기 때문에 데이터 손실 염려가 없다
-> 자료의 타입이 같을 필요 X (ex: a ="A", 3, True)
-> 한 개의 데이터를 가지는 튜플을 만들 때: a=(30,)/ 그냥 (30)이면 숫자 30을 만드는 것

> 튜플 만들기
튜플 = (데이터, 데이터, 데이터) / 리스트는 대괄호
또한, 튜플 =데이터, 데이터, 데이터 처럼 소괄호를 없이 써도 됨

> 튜플을 리스트로 만들기
ex1) a = tuple([5,6,7])  <=> (5,6,7)
ex2) x = list(range(10)), a=tuple(x) => (0,1,2,...,9)

> 패킹과 언패킹
- 패킹: 데이터를 어떤 변수에 튜플 형태로 저장하는 것. 여러 개의 데이터를 하나의 변수에 할당하는 것
- 언패킹: 변수에 있는 튜플 형태의 데이터를 다른 변수에 저장하는 것. 컬렉션의 각 데이터를 각각의 변수에 할당하는 것
ex) a, b= b, a  : a와 b의 데이터를 바꿈

> 튜플함수
ex) a = 10, 20, 30, 40, 30
1. 특정값의 인덱스 구하기: a.index(20)  => 1
2. 특정값의 갯수: a.count(30) => 2
3. 최대값, 최소값: max(a), min(a) => 40, 10
4. 합계: sum(a) =>130

딕셔너리

> 딕셔너리의 특징: 시퀀스 자료형 (순서가 있는 자료형 형태)
1. 키와 데이터를 가지고 있는 사전형 자료형
2. 사전형태의 자료를 만들 때 편리

> 딕셔너리 만들기
딕셔너리 = {키1:데이터1, 키2:데이터2}
ex) stock = {"삼성전자": [75000, 81500, 83000], "LG전자": (150000, 148000, 142900)}
-> 리스트 및 튜플 형태로도 가능

> 딕셔너리 접근하기
딕셔너리 ["키"]

 


> 딕셔너리 할당하기
딕셔너리 ["키"] = 데이터

> 딕셔너리 삭제하기
del 딕셔너리 ["키"]: 키 값에 해당하는 데이터들이 모두 사라짐


> 딕셔너리 함수
1. 키와 데이터 쌍: stock.items()

 

반복문을 통해 튜플형태로 저장


2. 키: stock.keys()
3. 데이터: stock.values()

 

키만 데이터만 출력됨

> 딕셔너리 안에 딕셔너리도 가능


 

> 소소한 팁: Alt + Shift : 코드복사