2012-04-17 2 views
3

나는 10 개의 다른 파이썬 파일이있는 프로젝트를 가지고 있습니다. 꽤 많은 클래스와 함수를 가지고 있습니다. 모든 프로젝트 파일간에 프로젝트의 설정을 나타내는 특정 데이터를 공유하려고합니다.모듈간에 설정을 공유하는 올바른 방법

settings = {} 
settings['max_bitrate'] = 160000 
settings['dl_dir'] = r"C:\Downloads" 

을 한 후 나는 모든 파일에서 클래스를 가져옵니다

나는 settings.py 파일을 생성 함께했다.

더 적합한 방법이 있습니까?

+0

"나는 .INI 파일"이라고하는 Zigg : 구성 파일이 지적한 결정적인 방법이 있다고 생각합니다. 유스 케이스가 그 존재 이유입니다. – heltonbiker

답변

4

내가 아마이 점에서 조금 구식이야,하지만 내 최신 프로젝트에, 내가 /etc에서 설정 파일을 만든 다음에 그것을 읽고 사용할 수 있도록 ConfigParser를 사용하는 config 모듈을 생성하고, 수입 그 config 모듈 어디서나 설정을 읽을 필요가있다.

+2

나는 그들의 힘을 재발견하고있다. 필자는 규칙이 있어야한다고 생각합니다. 시스템의 모든 매개 변수 정보 (메타 데이터라고도 함)는 소스 코드에서 구성 파일에 저장되어야합니다. 사실 : "코드에 추상화 넣기, 메타 데이터 세부 사항": http://pragmatictips.com/38 – heltonbiker

1

당신의 방법은 나에게 좋다고 들리며 설정 파일이나 Windows 레지스트리를 사용하거나 읽기 전용 API를 제공하는 등 설정 모듈의 구현을 쉽게 변경할 수 있다는 장점이 있습니다.

관련 문제