2012-10-09 69 views
3

我有一個使用配置文件的命令行python腳本。我打算很快就把它放在pypi上。在pypi包中包含用戶可編輯配置文件的最佳方法?

什麼是在包中包含配置文件的默認版本的最佳通用方法,以便最終用戶在哪裏可以找到它?

包含用戶可編輯配置文件的pypi項目的一個示例是Django。在Django中,用戶必須運行一個腳本來初始化一個新項目。這會生成一個包含項目配置文件的大量目錄。但是,對於像我這樣的簡單命令行實用程序來說,這似乎是一個沉重的方法。

另一種選擇是要求用戶將配置文件的位置指定爲命令行arg。我想這沒什麼問題,但它將用戶的責任轉到文檔並從頭開始創建整個配置文件。

有沒有更好的選擇?這是否有任何標準做法?

謝謝!

-Travis

回答

2

你可以包括默認爲腳本的一部分,然後讓用戶用任何一個命令行參數,或在用戶的主目錄下的配置文件更改默認值。

我不認爲Django的方法將工作,除非你有一個項目的概念。

如果這是在Unix上,我會把配置文件放在/ etc中,如果腳本將由多個用戶運行或者作爲點文件在用戶的home文件夾中運行。這樣用戶不必每次都指定配置文件,儘管你也可以有一個命令行參數,讓用戶指定一個不同的配置文件來使用。

0

我喜歡Nathan的回答。但在這種特殊情況下,我最終爲腳本添加了一個命令行選項,該選項會將示例配置文件轉儲爲標準輸出。