X
전역 변수를 참조하지 않는 몇 줄의 Python 코드를 작성하십시오.
def method():
X
print(a)
method()
인쇄 1
하지만
def method():
X
X
print(a)
method()
인쇄합니다 2
.
그래서, 나는 까다로운 사람이 될 것을 싫어하지만 것 같습니다 vars
과 locals
실제로 파이썬에서 전역 변수입니다 :
def test_global_1():
global vars, locals
vars = lambda: 2
locals = lambda: 3
def test_global_2():
print(vars())
print(locals())
test_global_1()
test_global_2()
또한 사람들이 이와 같은 퍼즐에 대한 객관적인 승리 기준을보고 싶어하는 것 같습니다. 코드 길이는 실제로 여기에 느껴지지 않으므로 코드의 다양한 새로운 기능에 대한 브라우니 포인트 시스템을 만들 수 있습니까? 나는 이것이 무엇이 될 수 있는지 확실하지 않지만 여기에 시작이 있습니다.
- 실제로 진정한 글로벌이 없으면 +1 (아니오
vars
또는locals
) - 특정 기술을 최초로 게시 한 사람은 +1
- 게시 된 가장 짧은 솔루션에 +1
- 단일 Python 문만 포함 된 솔루션의 경우 +1
- 어휘 이외의 경계에 참여하는 것과 같은 흥미로운 "해킹"에 +1
- 예외를 사용하지 않으면 +1
더 많은 것을 생각할 수 있다면이 질문을 편집하여 목록에 추가 할 수 있습니다.
이 문제는 예외를 사용하지 않고 해결 될 수 와 같은 전역을 사용하지 않고 vars
하고 locals
? 정확히 어떻게 아직 파악하지 못했지만 가능하다고 생각합니다 ...
X
이지만 다른 옵션이 있습니다.