如何使用多if条件执行while语句?

2024-04-24 19:33:15 发布

您现在位置:Python中文网/ 问答频道 /正文

从这里开始学习python,并想通过我的在线课程进行一些修改:

while True:
    print("What is your name?")
    name = input()
    character = int(len(name))
    if character < 3 or character > 20:
        print("Name can only less than 3 character and no more than 50 character")
    else:
        print(f"Welcome back, {name}")
        break

基本上,我希望我的代码能够:

  1. 输入名称
  2. 如果名称少于3个字符,则会显示错误消息并返回以输入名称
  3. 如果名称超过50个字符,则会显示错误消息并返回以输入名称
  4. 如果名称大于3小于50,则会显示欢迎返回消息。你知道吗

我的代码完全按照它所说的做,但我想知道是否可以通过每个条件定制通知。任何帮助都将非常感谢,因为这是我可以通过stackoverflow浏览出来的。(或者是我能理解的最简单的一个)


Tags: 代码name名称true消息youris错误
3条回答

add和else if:这样的语句

while True:
    print("What is your name?")
    name = input()
    character = int(len(name))
    if character < 3:
        print("Name can only less than 3 character and no more than 50 character")
    elif character > 50:
        print("Error message")
    else:
        print(f"Welcome back, {name}")
        break

尝试添加elif

对于Instance:

elif character > 50:
    print("name is {} characters long, please try again".format(character))

您可以在if中添加对实际数字的检查。你知道吗

if character < 3 or character > 50:
    print("Name can only have more than 3 character" if character < 3 else "Name can only have less than 50 character")

或者对这两种情况都使用常规消息

if character < 3 or character > 50:
    print(f"Name must be between 3 and 50 characters, {character} where inserted")

您还可以反转检查以删除else

if 2 < character < 51:
    print(f"Welcome back, {name}")
    break
print(f"Name must be between 3 and 50 characters, {character} where inserted")

相关问题 更多 >