我試圖定義一個Python3功能,用於評估輸入是否符合給定的要求;它們是:長度必須在3到20個字符之間(包括),只能是字母和撇號以及「 - 」和空格。評估的要求,返回總是如此
def validateFirstname(firstname):
#Local Variable
hasFirstname = False
Caracterslist = "/'/-"
if (len(firstname) >= 3 and len(firstname) <= 20 and
firstname.isalpha(), firstname.isspace(), (firstname in Caracterslist)):
hasFirstname = True
return hasFirstname
firstname = str(input("Enter your first name: "))
if (validateFirstname(firstname)):
print("Your first name is: ", firstname)
else:
print("The first name you entered ", firstname, "is not valid!")
實際上,它比20個caracters返回True即使名字較長,即使它包含的數字...
我不明白爲什麼...
它幾乎可行!事情是,如果使用任何'或 - ,它總是返回false ...。 – djwelcome
@djwelcome,固定它,我有'firstname'而不是'c'。 – perreal
它工作!只需要將'('in''=「)中的=改成'(c in」' - 「)' – djwelcome