与 Def 混淆 Python
Confused with Def Python
def yesno(endwhat):
end = False
while not end:
ok = input("<Y/N>")
if ok.upper == 'Y' or ok.upper == 'N':
if ok.upper == 'Y':
end = True
endwhat = True
else:
print("Enter only <Y/N>")
return(ok)
这不起作用,即使我输入 Y 或 N,它也会重复。
我认为问题是当我在 'endwhat' 中输入 var 时,它不会将其更改为 True。
非常感谢任何帮助。
谢谢...
您忘记将 () 放入字符串函数中。
def yesno(endwhat):
end = False
while not end:
ok = input("<Y/N>")
if ok.upper() == 'Y' or ok.upper() == 'N':
if ok.upper() == 'Y':
end = True
endwhat = True
else:
print("Enter only <Y/N>")
return(ok)
.upper() 是一个函数,所有函数都必须为任何参数(如果有)包含一个“()”。否则,它们将被视为提到的默认值。您忘记输入“()”。正确的版本是-
def yesno(endwhat):
end = False
while not end:
ok = input("<Y/N>")
if ok.upper() == 'Y' or ok.upper() == 'N':
if ok.upper() == 'Y':
end = True
endwhat = True
else:
print("Enter only <Y/N>")
return(ok)
你忘记了 () 代表鞋面。
您也可以使用如下代码:
def yesno(endwhat):
end = False
while not end:
ok = input("<Y/N>").upper()
if ok == 'Y' or ok == 'N':
if ok == 'Y':
end = True
endwhat = True
else:
print("Enter only <Y/N>")
return(ok)
def yesno(endwhat):
end = False
while not end:
ok = input("<Y/N>")
if ok.upper == 'Y' or ok.upper == 'N':
if ok.upper == 'Y':
end = True
endwhat = True
else:
print("Enter only <Y/N>")
return(ok)
这不起作用,即使我输入 Y 或 N,它也会重复。 我认为问题是当我在 'endwhat' 中输入 var 时,它不会将其更改为 True。 非常感谢任何帮助。 谢谢...
您忘记将 () 放入字符串函数中。
def yesno(endwhat):
end = False
while not end:
ok = input("<Y/N>")
if ok.upper() == 'Y' or ok.upper() == 'N':
if ok.upper() == 'Y':
end = True
endwhat = True
else:
print("Enter only <Y/N>")
return(ok)
.upper() 是一个函数,所有函数都必须为任何参数(如果有)包含一个“()”。否则,它们将被视为提到的默认值。您忘记输入“()”。正确的版本是-
def yesno(endwhat):
end = False
while not end:
ok = input("<Y/N>")
if ok.upper() == 'Y' or ok.upper() == 'N':
if ok.upper() == 'Y':
end = True
endwhat = True
else:
print("Enter only <Y/N>")
return(ok)
你忘记了 () 代表鞋面。 您也可以使用如下代码:
def yesno(endwhat):
end = False
while not end:
ok = input("<Y/N>").upper()
if ok == 'Y' or ok == 'N':
if ok == 'Y':
end = True
endwhat = True
else:
print("Enter only <Y/N>")
return(ok)