import pywaves as pw
import sys, getopt
amount = 0
receive = ''
try:
options, remainder = getopt.getopt(
sys.argv[1:],
'r:a',
['receive',
'amount',
])
except getopt.GetoptError as err:
print('ERROR:', err)
sys.exit(1)
for opt, arg in options:
if opt in ('-a', '--amount'):
amount = arg
elif opt in ('-r', '--receive'):
receive = arg
print('OPTIONS :', options)
myAddress = pw.Address(privateKey='MYPRIVATEKEY')
otherAddress = pw.Address(receive)
myToken = pw.Asset('MYADDRESS')
myAmount = amount
myAddress.sendAsset(otherAddress, myToken, myAmount)我试着运行上面的代码,似乎我的选项"a“没有被捕获。我该怎么做才能让它正常工作呢?
我运行以下命令行
python this.py -r 3PFPovgPu3aBWA1krU544tPDTFiHgpvu7q1 -a 150它返回
('OPTIONS :', [('-r', '3PFPovgPu3aBWA1krU544tPDTFiHgpvu7q1'), ('-a', '')])我不确定为什么"a“值是空的。如何更改代码以使其正常工作?
发布于 2018-02-05 02:07:22
您需要在第二个参数'a‘后添加冒号。所以试一试
getopt.getopt(sys.argv[1:],'r:a:',['receive','amount'])查看getopt的文档,这里说得很清楚:解析命令行选项和参数列表。args是要解析的参数列表,没有对正在运行的程序的前导引用。通常,这意味着sys.argv1:。是脚本想要识别的选项字母字符串,其中的选项需要一个参数后跟一个冒号options (':';即Unix getopt()使用的相同格式)。
https://stackoverflow.com/questions/48610772
复制相似问题