第7章 · 用户输入和while循环

使用input()获取用户输入,通过while循环编写交互式程序,并会用标志控制循环。

知识点 代码示例 章节测验(2 题)

知识点讲解

input()获取输入

input() 函数让程序暂停并等待用户输入,返回的永远是字符串。需要数字时必须用 int() 转换:

age = input("你多大了?")
age = int(age)

求模运算符 % 返回余数,常用于判断奇偶(number % 2 == 0)或周期性任务。

while循环

while循环在条件为True时不断执行代码块,直到条件变为False。

current = 1
while current <= 5:
print(current)
current += 1

任何for循环都可以用while实现,但while更适合在不知道循环次数、需要根据条件退出的场景。

break、continue与标志

break 立即退出整个循环;continue 跳过本次循环剩余代码直接进入下一次迭代。对于需要多个条件同时控制的循环,可以定义一个"标志"变量(如 active = True),在循环内部根据情况修改标志来控制循环是否继续,代码更清晰。

代码示例

while循环与输入

演示input()与while循环结合。

prompt = "告诉我你最喜欢的编程语言: "
prompt += "\n输入quit结束。\n"

active = True
while active:
    message = input(prompt)
    if message == "quit":
        active = False
    else:
        print(f"你喜欢: {message}")

# break 与 continue
while True:
    city = input("城市名(输入quit退出): ")
    if city == "quit":
        break
    if city == "":
        continue
    print(f"我爱的城市: {city.title()}")

用while处理列表

演示while移动列表元素。

unconfirmed = ["alice", "brian", "candace"]
confirmed = []

while unconfirmed:
    current = unconfirmed.pop()
    print(f"验证用户: {current.title()}")
    confirmed.append(current)

print("\n已确认的用户:")
for user in confirmed:
    print(user.title())