Programming Language/Python
[파이썬/Python] 문자열을 변수로 만들기, globals() locals()
알파해커 테크노트
2021. 6. 2. 18:23
반응형
예를 들어, 아래와 작성된다면 입력 받은 문자열이 "apple" 일 때, apple이라는 변수가 생성되고 값이 할당되는 것을 볼 수 있다.
user_input = input("Enter string for variable name: \n")
globals()[user_input] = 50
print(apple)
print(type(apple))
>>> 50
>>> <class 'int'>
이 때, globals는 글로벌 변수를 의미하고, locals는 로컬 변수를 의미한다.
globals() 를 호출했을 때는 글로벌 변수들이, locals() 를 호출했을 때는 로컬 변수들이 Dictionary 형태로 불러와진다.
따라서, Dict의 특성에 따라, globals()["apple"] = 50 이라고 하면, 새로운 Key-Value 쌍이 만들어지는 것이며,
이는 곧, apple = 50 과 같은 효과가 되는 것이다.
같은 원리로, 로컬 변수 할당은 locals()["apple"] = 50 이라고 하면 된다.
반응형