我的密码
def validate():
if len(sys.argv) > 6:
print("No more than 5 arguments please")
exit()
def printArgs():
print("\nthe arguments are:\n")
for arg in sys.argv[1:]:
print (arg)
def checkDigits():
biggest = []
for arg in sys.argv[1:]:
if arg.isdigit():
biggest.append(arg)
if len(biggest)>= 3:
print("\nthe biggest number passed is: ", max(biggest))
else:
print("you did not pass 3 or more numbers")
def main():
validate()
printArgs()
checkDigits()
main()
如果我通过1 2 23 32 4,它将在“ checkDigit”函数中返回4而不是32,我不知道为什么。传递5 4 3 2 1返回5,那么我会错过什么吗?
我读了另一篇StackOverflow文章,并认为将key = int添加到我的max函数应该可以,对吗?
def checkDigits():
biggest = []
for arg in sys.argv[1:]:
if arg.isdigit():
biggest.append(arg)
if len(biggest)>= 3:
print("\nthe biggest number passed is: ", max(biggest, key=int))
else:
print("you did not pass 3 or more numbers")
在函数checkDigits中,必须在“最大”列表中附加整数,因此请对此进行更改:
def checkDigits():
biggest = []
for arg in sys.argv[1:]:
if arg.isdigit():
biggest.append(int(arg))
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句