300x250
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- 그래프
- google coding competition
- 프로그래밍
- 코딩 테스트
- 동적 프로그래밍
- dp
- 구글 킥스타트
- OS
- 백준
- 동적프로그래밍
- DFS
- 파이썬
- 순열
- 알고리즘
- 킥스타트
- 코딩테스트
- BFS
- 네트워크
- AI
- 운영체제
- 코딩
- kick start
- nlp
- 프로그래머스
- 딥러닝
- PYTHON
- CSS
- linux
- 리눅스
- 브루트포스
Archives
- Today
- Total
오뚝이개발자
[Python] 파이썬 전역변수 global 본문
728x90
300x250
파이썬에서 전역변수를 사용하려면 global 키워드를 사용해야 한다. 파이썬은 함수 내에서 사용하는 변수는 자동적으로 지역변수로 간주하기 때문이다. 따라서 global이라는 키워드를 붙여줌으로 해당 변수는 전역변수를 사용하는 것이라는 점을 명시해주어야 한다.
x = 5
def solution():
global x
x += 1
print(x) # 6
위와 같이 x를 처음에 전역변수로 선언해 5를 할당한 뒤 solution이란 함수에서 global x 키워드를 사용하여 1을 더해주었다. 만약 global x를 지워버리면 어떻게 될까?
x = 5
def solution():
x += 1
print(x)
위 코드를 실행시키면 "UnboundLocalError: local variable 'x' referenced before assignment"라고 에러 문구가 뜰 것이다. 즉, solution 내의 x를 지역변수로 간주하여 값이 할당되지도 않았는데 1을 더해주기 때문에 생기는 에러이다.
x = 5
def solution():
x = 1
print(x) # 1
위 코드의 결과값은 무엇일까? 바로 1이다. 이처럼 global을 사용하지 않으면 무조건 지역변수로 간주한다.
728x90
300x250
'Language > 파이썬' 카테고리의 다른 글
[Python] 파이썬 내장함수 시간복잡도 (0) | 2020.12.15 |
---|---|
[Python] 파이썬 in 연산 시간복잡도 (0) | 2020.12.02 |
[Python] 파이썬 문자 아스키 코드 변환 (0) | 2020.11.09 |
[Python] 파이썬 heap(heapq 모듈) (0) | 2020.10.29 |
[Python] 파이썬 any(), all() 함수 (2) | 2020.10.29 |
Comments