簡體   English   中英

cli中的argparse Python模塊

[英]argparse Python modules in cli

我試圖從Linux SSH安全Shell命令行環境運行python腳本,我試圖導入argparse庫,但它給出錯誤:“ImportError:沒有名為argparse的模塊”。

我認為這是因為Linux shell使用的Python環境中沒有argparse庫,我想我可以修復它,如果我能找到Python環境所使用的庫的目錄,並且將argparse庫復制到其中,但我找不到該目錄所在的位置。

我很感激找到這個目錄的任何幫助(我想我現在可以將argparse庫包含在與我的python腳本相同的目錄中,但我寧願在其他Python庫所在的地方使用argparse庫,因為它應該)。

argparse模塊是在Python 2.7中添加的。 http://docs.python.org/library/argparse.html

在2.7之前,處理命令行參數的最常用方法可能是getopt http://docs.python.org/library/getopt.html

當然,您只需通過查看sys.argv即可手動處理命令行。 但是getopt是一個很好的抽象層,而argparse甚至更好。

如果你真的需要在舊環境中使用argparse (有爭議),那么有一個Google Code項目可以維護它,你可以在項目中包含它。 http://code.google.com/p/argparse/

如果您使用的是CentOS並且沒有簡單的RPM來獲取Python 2.7,那么JF建議使用pip install argparsepip install argparse的方法。 在新的答案中調用此解決方案。 謝謝,JF。

如果你使用Centos 6默認的Python 2.6.6,只需手動添加包

yum install python-argparse

這就是讓我讓IPython工作的全部內容。 奇怪的是,當我使用YUM安裝IPython時,YUM沒有自動安裝它。

您可以檢查模塊的搜索路徑:

import sys
print "\n".join(sys.path)

但沒有argparse是奇怪的:它在標准庫中......

您可能正在使用舊版本的Python。

最近在Python 2.7中添加了argparse模塊。

暫無
暫無

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

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