0
我寫在那裏我試圖使用argeparse
程序-l
:如果你使用python myprog.py -l
它會列出所有文件罪創建一個參數的程序我的Amazon S3 bucket.This是我的代碼:Python的Argeparse錯誤
from ConfigParser import RawConfigParser
from boto.s3.connection import S3Connection
from boto.s3.key import Key
import argparse
config = RawConfigParser()
config.read('tm/aws.cfg')
conn = S3Connection(config.get('prodAws', 'aws_access_key_id'), config.get('prodAws', 'aws_secret_access_key'))
bucket = conn.get_bucket(config.get('prodAws', 'bucket'))
parser = argparse.ArgumentParser()
parser.add_argument("-l", "--list",type=str, help= "Lists content of bucket name specified" , default = config.get('prodAws', 'bucket'))
args = parser.parse_args()
if args.list:
for key in bucket.list():
print key.name
但是,當我運行python myprog.py -l
它給了我一個error: argument -l/--list: expected one argument
。在-l
之後總是需要一些字符串,即使其像ksdjhjk
這樣的亂碼也是如此。我嘗試將nargs
添加到parser.add_argument中,但沒有用。
任何幫助?
作品!感謝'type'中的提示 – letsc 2015-02-10 19:50:38