我正在打包一個小型Python項目作爲zip或egg文件,以便它可以分發。我已經遇到了兩種包含項目配置文件的方式,這兩種方式似乎都產生了相同的結果。2種將文件包含在Python發行版中的技術:哪種更好?
方法1:
包括此代碼在setup.py:
from distutils.core import setup
setup(name='ProjectName',
version='1.0',
packages=['somePackage'],
data_files = [('config', ['config\propFiles1.ini',
'config\propFiles2.ini',
'config\propFiles3.ini'])]
)
方法2:
包括此代碼在setup.py:
from distutils.core import setup
setup(name='ProjectName',
version='1.0',
packages=['somePackage']
)
然後,用這行代碼創建一個MANIFEST.in文件:
include config\*
這兩種方法有什麼不同嗎?哪一個是首選?我傾向於傾向於第一個,因爲不需要MANIFEST.in文件。但是,在第一種方法中,您必須單獨指定每個文件,而在第二種方法中,您可以只包含整個文件夾。還有什麼我應該考慮?標準做法是什麼?
注意:使用os.path.join創建路徑;使用「\」是Windows特定的。 – 2010-06-03 18:32:36
您也可以在所有平臺上使用'/'。請注意,如果你有像'config \ notes.txt'這樣的文件,'\ n'會變成換行符!你很幸運'\ p'不代表什麼。 – 2010-06-03 19:22:16
@Ian Bicking - 感謝您的提示!我將它們全部用r作爲前綴來注意 – froadie 2010-06-03 19:52:26