sys.argv 无输出

我正在尝试使此代码与 sys.argv 一起使用,但它没有在输出中显示任何内容。用户输入一个值,然后打印密钥。


from __future__ import print_function

import sys


v = sys.argv[1:]


d={1:'a', 2:'b', 3:'c', 4:'a', 5:'d', 6:'e', 7:'a', 8:'b'}


for key, value in d.items():

    if value == v: 

        print(key, '', end='')


蝴蝶刀刀
浏览 246回答 2
2回答

守着一只汪

你有type问题v = sys.argv[1:] #  v is a list here, even if its a single item or empty中的值d不是列表,因此如果您更改此行,它们将不匹配:if value == v:进入:if value in v:它会起作用。它的作用是检查您的值是否包含在列表中

慕尼黑的夜晚无繁华

v = sys.argv[1:]设置v为所有命令行参数的列表。如果你只想要第一个参数,它应该是:v = sys.argv[1]
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python