簡體   English   中英

如何在python中創建程序啟動參數

[英]How to create program startup parameters in python

我才剛剛開始學習python,我正在編寫的程序需要參數才能使其運行特定任務。 例如(程序名稱是Samtho)

samtho -i Mozilla_Firefox

我怎樣才能做到這一點?

閱讀有關optparse的文檔。 它非常強大,可以讓您使用許多參數並創建幫助文本。

您可以使用標准庫中的optparsegetopt模塊。 前者更靈活,因此建議使用。

如果要編寫自己的解析器,則必須檢查sys.argv的內容。 sys.argv[0]包含正在執行的程序的名稱。 sys.argv[1:]是一個包含所有傳遞給程序的參數的列表。

這是使用optparse一個最小示例(我通過手動設置sys.argv模仿了程序執行):

>>> import sys
>>> sys.argv = 'samtho -i Mozilla_Firefox'.split()
>>>
>>> from optparse import OptionParser
>>> parser = OptionParser()
>>> parser.add_option("-i")
<Option at 0xb7881b4c: -i>
>>> options, args = parser.parse_args()
>>> options
<Values at 0xb788958c: {'i': 'Mozilla_Firefox'}>
>>> options.i
'Mozilla_Firefox'

使用sys.argv直接獲取輸入參數(首先import sys )。 有很多不同的庫( optparsegetopt內置模塊很流行)來幫助解析參數,但是根據所需的復雜程度,進行原始匹配可能會更容易。

如果您不介意使用標准庫,那么argparse通常被認為是參數解析的最佳選擇。

我發現optfunc是最容易使用的庫。

import optfunc, sys

def samtho(i=''):
    "Usage: %prog -i <option>"
    print i

if __name__ == '__main__':
    optfunc.run(samtho)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM