내가, 파이썬 파일에 설정을 저장과 같이하고있어 말 : 이제계산 문자열 값이 동적으로
#!/usr/bin/env python
#
# settings.py
import os
LOG_DIR = '/tmp'
LOG_FILE_MAIN = os.path.join(LOG_DIR, 'main.log')
, 나는이 포함되도록하고, 값 중 하나를 변경과 같은 파일 :
#!/usr/bin/env python
#
# main.py
import settings
settings.LOG_DIR = '/home/myuser'
(지금 변경된) "참조"변수에 의존하는 변수를 출력 할 때 값이 변하지 않았 음을 알 수 있습니다.
print(settings.LOG_FILE_MAIN)
반환됩니다
/tmp/main.log
대신에 :
/home/myuser/main.log
이 (파이썬은 이미 문자열 값을 계산했다) 왜 나는 이해하지만 내가 해결해야합니다. 클래스를 만들고 __setattr__
함수를 재정의하는 것 이외에 원하는 결과를 얻을 수있는 방법이 있습니까?
문자열 대신 값 사전을 사용할 수 있습니다. – Celeo
이것은 문자열을 변경할 수 없다는 것과 아무런 관련이 없습니다. –
사실, 그렇지 않습니다. 내 실수. – stephenfin