from sys import argv
def multii():
if len(argv) < 2:
pass
else:
for value in values:
if len(value) == argv[1]:
print(value)
values = ["acehorrst", "hellorye", "badbadg", "skrskr", "hahahah"]
multii()
我在终端中调用为:“python3”filename.py“9”
所以应该是:“python3 testargv.py 9” 它在终端什么也不做
我以为9会是第1个论点的条件,还有一个“acehorrst”,它有9个字母长,不起作用,我对所有的单词都有相同的问题,不管我放了什么数字
你忘了把argv转换成整数。线路应为:
我认为您要找的是将值的长度与参数的整数值进行比较,默认情况下,参数被视为字符串。 因此执行
python3 testargv.py 9
将使argv
如下所示['testargv.py', '9']
在代码中将长度与字符串进行比较时,将
argv[1]
转换为int(argv[1])
就可以了相关问题 更多 >
编程相关推荐