python入坑的一点小疑问

问题遇到的现象和发生背景

python入坑的一点疑问 这个while循环一直执行下去都是“4 in while segment”
为什么不是从1开始而是直接从4开始呢 求各位懂哥解答一下

问题相关代码,请勿粘贴截图

while count in range(5):
print(count, "in while segment")
else:
print(count, 'in else segment')

运行结果及报错内容

4 in while segment
4 in while segment
4 in while segment
4 in while segment
4 in while segment
4 in while segment
4 in while segment
4 in while segment

最有可能的是,您将count这个变量定义成了4
即:count=4

你的代码贴全了吗?
count在进入while之前已经是4了吧

为什么不是从1开始而是直接从4开始呢 根据你的想法,修改如下

for count in range(5):
    print(count)
    while count in range(5):
        print(count, "in while segment")
    else:
        print(count, 'in else segment')

这时候count可以取0到4,而while条件range(5)也为0到4,显然while条件永远满足所以会一直输出4 in while segment

首先,你这个是个死循环,所有会一直打印

range是创建一个可迭代对象,
range(5),生成就是0-4元素的可迭代对象
count in range(5)是判断count 变量的值是否在range(5)里面

你采用的是while循环
while 循环条件:
循环体
count in range(5),条件为真就会一直执行循环体

你应该采用for循环,
去循环range(5)中的元素
for count in range(5):
print(count, "in while segment")
else:
print(count, 'in else segment')