我想写一个函数,如果用户输入的pin长度是4或6,就打印True。我写了这个函数,但是当我运行它时,它会输出这个错误。我如何修复这个错误,首先它的问题出在哪里?
pin = raw_input("Please enter your four or six digit pins")
def validate_pin(pin):
if len(pen) == 4 or 6:
purp = True
else:
purp = False
return(purp)
print purp
validate_pin(pin)
Traceback (most recent call last):
File "main.py", line 1, in <module>
from solution import *
File "/home/codewarrior/solution.py", line 1, in <module>
pin = input("Please enter your four or six digit pins")
EOFError: EOF when reading a line
发布于 2018-06-04 08:50:52
您的代码中有几个错误,但是,我无法创建您的特定错误消息。很可能是您的raw_input失败了。
这是你固定的代码:
pin = raw_input("Please enter your four or six digit pins")
def validate_pin(pin):
if len(pin) in [4, 6]:
# your old code results in two boolean statements
# 1) len(pin) == 4, this correctly checks for a length of 4
# 2) or 6, this is always true, result in your if statement
# always being true
purp = True
else:
purp = False
print purp
# if your print statement comes after a return statement,
# it is never executed
return(purp)
validate_pin(pin)
https://stackoverflow.com/questions/50672193
复制相似问题