변수
변수는 전역변수와 지역변수로 나눌 수 있다.
전역변수 : 함수, 클래스 외부에서 선언하며, 코드 어디에서나 접근 가능.
프로그램이 종료되면 메모리에서 소멸
지역변수 : 한정된 지역에서 사용되는 변수 ( ex. 함수 내에서 선언된 변수 )
그 지역을 벗어나면 메모리에서 소멸
global 키워드
전역변수의 값을 함수 내부에서 읽기는 가능하지만, 변경할 수 없기에
global이라는 키워드를 사용하여 값을 변경해야한다.
▼ 그냥 전역변수의 값을 가져오는건 가능하다.
▼ 하지만 전역변수의 값을 함수내에서 바꾸려고 하면
함수 외부에서 선언된 변수를 내부에서 사용하려하였기에 UnboundLocalError가 뜬다.
▼global로 사용할 전역변수를 불러주면, 전역변수에 있는 값을 변경할 수 있게된다.
함수의 가변 매개변수
def func(*args):
def func(**kwrags):
함수에서 사용할 매개변수의 개수가 가변적일때 사용한다.
▶ *args 가변 매개변수
식별자 앞에 *을 표시하며 관례상 *args를 사용한다.
사용할 땐 *을 안붙여도 된다.
매개변수를 튜플형식으로 묶어서 사용
▼
고정된 매개변수가 있을 땐, *args를 가장 마지막에 써야한다.
a = "hi"
b = 1
args = (2, 3, 4, 5)
▼
▶ **kwargs 딕셔너리 가변 매개변수
def func(**kwargs):
함수에서 매개변수를 딕셔너리 형태로 묶어서 사용할 때 관례상 **kwargs를 사용한다.
- 딕셔너리를 사용했기에 딕셔너리 메서드 사용가능
- *args와 **kwargs를 같이 사용할 땐 무조건 *args가 먼저 와야한다.
▼출력물
name : 홍길동
city : 서울
gender : 남자
나이는 44
▼
'Python' 카테고리의 다른 글
[Python] 람다식 ( Lambda Expressions ) (2) | 2024.12.13 |
---|---|
[Python] (recursion)재귀함수 이해해보기, 스택 (0) | 2024.12.11 |
[Python] 함수 def (2) | 2024.12.09 |
[Python] while문 for문(리스트내포, 딕셔너리, 리스트 , 이중for문) (2) | 2024.12.06 |
[Python] if문, elif문, else문, 중첩조건문 (0) | 2024.12.02 |