007_用户输入和while循环

1、input()函数工作原理

# 编写清晰的提示
message = "输入你想输入的信息"
message = input(message)
print(message)
name = "下面输入你的个人信息:"
name += "\n你的名字是?"
name = input(name)
print(f'hi!, {name}')

# 使用int()来获取数值输入
age = input("请输入你的年龄:")
age = int(age)
if age >= 18:
    print('你已经是个成年人了')
else:
    print('你还未成年')

# 求模运算符(两个数相除返回余数)
print(4 % 3)
print(5 % 3)
print(6 % 3)
print(7 % 3)
print(8 % 3)

num = input("输入一个数:")
num = int(num)
if num % 2 == 0:
    print("能被2整除,是偶数")
else:
    print("不能被2整除,是奇数")

2、while循环简介

for循环用于针对集合中的每个元素执行一个代码块,而while循环则不断地运行,直到指定的条件不再满足为止

# 使用while循环
num = 1
while num <= 10:
    print(num)
    num += 1 # 是 num = num + 1 的简写
# 让用户选择何时退出
order = "输入'退出'可以结束指令输入!"
order += "\n请输入指令:"
od = ""
while od != "退出":
    od = input(order)
    if od != "退出":
        print(f"{od} 命令已执行")

# 使用标志
order = "输入'退出'可以结束指令输入!"
order += "\n请输入指令:"
od = True
while od:
    od = input(order)
    if od == "退出":
        od = False
    else:
        print(f"{od} 命令已执行")


# 使用break语句退出循环
order = "输入'退出'可以结束指令输入!"
order += "\n请输入指令:"
while True:
    od = input(order)
    if od == "退出":
        break
    else:
        print(f"{od} 命令已执行")

# 在循环中使用continue, 只跳出本次循环
current_number = 0
while current_number < 10:
    current_number += 1
    if current_number % 2 != 0:
        print(current_number)
    else:
        continue

# 要避免无限循环
while True:
    print("张三")
    break

3、使用while循环处理列表和字典

# 在列表之间移动元素
users = ["张三","李四","王五","马六",]
member_users = []
while users:
    user = users.pop()
    print(f'{user}准备加入会员')
    member_users.append(user)
    if user in member_users:
        print(f'{user}已加入会员')
    else:
        print("加入会员失败")
print("以下是所有的会员名单:")
for user in member_users:
    print(f"\n{user}")
print(f'原用户名单:{users}')

# 删除为特定值的所有列表元素
users = ["张三","李四","王五","马六","张三","李四","张三","王五"]
print(users)
while '张三' in users:
    users.remove('张三')
print(users)

# 使用用户输入填充字典
responses = {}
polling_active = True
while polling_active:
    name = input("\n你叫什么名字:")
    response = input("你相信星座运势吗?(相信/不相信):")
    responses[name] = response
    repeat = input("\n还有人想要参与调查吗?(yes/no):)")
    if repeat == "no":
        polling_active = False
print("\n---Poll Results---")
counter_x = 0
counter_b = 0
for name, response in responses.items():
    if response == "相信":
        counter_x += 1
    else:
        counter_b += 1
    print(f"{name}: {response}星座运势")
print(f"相信星座运势的人占比:{counter_x}/{counter_b + counter_x}")
print(f"不相信星座运势的人占比:{counter_b}/{counter_b + counter_x}")
posted @ 2025-09-22 17:22  Clefairy  阅读(11)  评论(0)    收藏  举报