2013-02-25 85 views
0

Distutils的允許用戶進行微調的安裝路徑與setup.py選項,如--prefix--install-purelib--install-scripts--install-data等,但我怎麼找給這些選項安裝後的價值?distutils包的安裝目錄

我已經閱讀了一些關於stackoverflow的討論,但可能找不到這些setup.py選項的值。

我的具體問題是:

  • 我需要的datafiles=訪問文件設置安裝選項
    • →都到--install-data,默認--prefix(其中,順便說一句,不匹配sys.prefix像docs說);
  • 從腳本通過scripts
    • 安裝→都到--install-scripts,默認--prefix + /bin

我一直在尋找從腳本目錄..相對的,但是這打破了一個不同的系統上的用戶。如果我可以查詢安裝選項的值,它將適用於所有情況。

回答

0

您可以使用pkgutil.get_data()來訪問數據文件,而不必使用安裝路徑。

import pkgutil 
contents_of_datafile = pkgutil.get_data(__name__, 'data_you_installed/datafile.csv') 
+0

謝謝,但這似乎看起來在庫目錄內(即'--install-purelib'),而不是數據目錄(由'--install-data'設置)。換句話說,它是關於distutils.core.setup'package_data'選項,而不是'data_files'選項。 但我正在考慮放棄並將文件放在'package_data'裏面。這有點瑣碎(因爲它是'config.ini',因此應該放在'etc /'中),但至少我可以確保從庫文件中找到它。 – boiko 2013-02-26 12:56:10

+0

「這有點icky」巧合也是distutils的座右銘。 – JosefAssad 2013-02-26 12:57:25