我一直在使用argparse模塊接受程序的輸入,並取得了很大的成功。我定義了大約六個可選參數(需要用 - 前綴的參數 - 可以放在列表中的任何位置)和一個位置參數(使用放置的順序來確定參數的必需參數),所以我的用法圖看起來像這(與簡潔,刪除多餘的可選參數):如何在Pythonbrew中使用位置參數和空格?
usage: Main.py [-h] [--site SITE] [--username USERNAME] [--password PASSWORD]
[--verbose]
filepath
爲了運行Debian的一個Python 2.7腳本(船舶與Python 2.6),我使用pythonbrew已經成功,它允許多個Python的安裝合作在同一臺服務器上存在。使用它的一個很好的副作用意味着我可以關閉腳本的可執行權限,這使得用戶管理更容易。
一切都很好,直到我試圖存儲到一個有空間的文件路徑(我唯一的位置參數),並且我發現我不能!
pythonbrew py Main.py --verbose /media/rackspace/db1/clients/My\ Client/
pythonbrew py Main.py --verbose '/media/rackspace/db1/clients/My\ Client/'
pythonbrew py Main.py --verbose "/media/rackspace/db1/clients/My\ Client/"
pythonbrew py Main.py --verbose [/media/rackspace/db1/clients/My\ Client/]
pythonbrew py Main.py --verbose /media/rackspace/db1/clients/My Client/
pythonbrew py Main.py --verbose '/media/rackspace/db1/clients/My Client/'
pythonbrew py Main.py --verbose "/media/rackspace/db1/clients/My Client/"
pythonbrew py Main.py --verbose [/media/rackspace/db1/clients/My Client/]
都返回相同的錯誤消息
Main.py: error: unrecognized arguments: Client
任何人都可以證實這個錯誤?事實上,沒有人在Python組中提到它,這讓我相信這是一個Pythonbrew錯誤,但我希望保持Pythonbrew並找到運行此腳本的備用方法。現在,我只是將文件存儲到一個沒有空格的文件夾中,但我希望有人能幫助解決這個錯誤。
聽起來像'pythonbrew'中的一個錯誤,但不是一個巨大的錯誤。 –
OH BLEEPS SAKE。我剛剛閱讀了'pythonbrew/commands/py.py'的源代碼,以及即時facepalm。 –