gpt4 book ai didi

python - 当 bool 值为 false 时,有什么方法可以进入 "while"循环

转载 作者:行者123 更新时间:2023-12-01 04:23:42 26 4
gpt4 key购买 nike

我基本上正在运行一段代码,通过用户条目将地址簿构建到文本文件中。

在此过程中,我会检查输入的信息是否正确,如果不正确,请他们更正。但是,我意识到用户有可能(尽管不太可能)无限次地输入不正确的信息,因此我希望实现一个“while”循环来解决此问题。

在下面的代码中,我基本上试图拥有它,这样我就可以通过检查“First_Name.isalpha():”的 bool 值来进入循环,而不是第一个 ifelse 条目。但是,我真的想不出一种进入它的方法,因为当“First_Name.isalpha():”为真时,我不需要进入循环,因为输入是正确的。当它为 false 时,我们完全跳过循环,而不更正条目。

这基本上提出了一个问题:当 bool 值为 false 时,是否有办法进入循环。或者,如果还有其他我没有考虑的创意解决方案。

谢谢

新手编码员

NewContact = "New Contact"

def NewEntry(NewContact):

# Obtain the contact's information:

First_Name = input("Please enter your first name: ")
Last_Name = input("Please enter your last name: ")
Address = input("Please enter your street address: ")
City = input("Please enter your city of residence: ")
State = input("Please enter the 2 letter abbreviation of your state of residence: ")
ZipCode = input("Please enter your zip code: ")
Phone_Number = str(input("Please enter your phone number: "))

# Ensure all information inputted is correct:


if First_Name.isalpha():
First_Name = First_Name.strip()
First_Name = First_Name.lower()
First_Name = First_Name.title()
else:
First_Name = input("Please reenter your first name. Be sure to to include letters exclusively: ")

if Last_Name.isalpha():
Last_Name = Last_Name.strip()
Last_Name = Last_Name.lower()
Last_Name = Last_Name.title()
else:
Last_Name = input("Please reenter your first name. Be sure to to include letters exclusively: ")

# Organize inputted information:

NewContact = Last_Name + ", " + First_Name
FullAddress = Address + " " + City + ", " + State + " " + ZipCode

# Return information to writer to ensure correctness of information

# Write information onto document

TheFile = open("AddressBook", "w")
TheFile.write(str(NewContact) + "\n")
TheFile.write(str(FullAddress) + "\n")
TheFile.write(str(Phone_Number) + "\n")

TheFile.close()

NewEntry(NewContact)

最佳答案

您正在寻找 not 运算符,它会反转 bool 值:

>>> not False
True
>>> not True
False
>>> not "".isalpha()
True
>>> not "abc".isalpha()
False

您可以将其添加到任何 ifwhile 的有效条件表达式的前面。

关于python - 当 bool 值为 false 时,有什么方法可以进入 "while"循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33401659/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com