适合使用while循环的情况
未知循环次数:
当你不知道循环需要执行多少次,而是根据某个条件来决定何时停止时,while循环更为合适。
例如,从用户那里获取输入,直到满足某个条件为止。
user_input = ""
while user_input != "exit":
user_input = input("请输入(输入'exit'退出): ")
无限循环:
当你需要创建一个无限循环,等待某个外部事件来打破循环时,可以使用while True。
例如,监听网络连接或按键事件。
while True:
data = socket.recv(1024)
if not data:
break
# 处理数据
适合for循环的情况
适合使用for循环的情况
1、已知循环次数:
当你知道确切的循环次数时,使用for循环更简洁明了。
例如,遍历一个固定长度的序列。
for i in range(10):
print(i)
2、遍历序列:
当你需要遍历一个序列(如列表、元组、字符串等)时,for循环通常更为方便。
例如,遍历列表中的所有元素。
for item in items:
process(item)
3、迭代器和生成器:
当你需要使用迭代器或生成器时,for循环可以自动处理迭代逻辑。
例如,使用生成器生成斐波那契数列。
def fibonacci(n):
a, b = 0, 1
for _ in range(n):
yield a
a, b = b, a + b
for num in fibonacci(10):
print(num)
map函数
numbers = list(map(int, input().split()))
将input().split()的结果转换成list
或者
使用列表推导式:
numbers = [int(x) for x in line]