当前位置: 首页 > 图灵资讯 > 行业资讯> 手把手教你使用python中的循环for和while

手把手教你使用python中的循环for和while

发布时间:2025-09-30 17:24:01

python中的for循环是一种通用的序列迭代器,可以遍历任何有序的序列对象中的元素(注意是遍历),也就是说循环的方式从一开始就固定了,本质上是遍历。

python:代码

count=0forinrange(8):ifi%2==0:
i+=2print(i,end='')
count+=1print('\N总数',count)

返回结果

21436587
总次数8

我的初衷是让这个程序遇到偶数跳两次。显然,它已经执行了八次

而c++代码可以通过for实现此功能:

for(inti=1;i<=8;i++)
{
if(i%2==0){
i+=2;
}
cout<<i<<'';
}

结果为

1458

为了在python中简单地实现上述功能,需要使用while。

总结: 里的 只是有序序列的遍历

深层次原因:

python for循环本质上是一个迭代器。迭代器在一个独立的线程中工作,并且有一个mutex(相互排斥)锁,也就是说,只有一个过程可以访问这个迭代对象。

当创建迭代器时,它生成一个指向可迭代对象的内存索引表,这里是range(8)。当i更改时,索引表的内容并没有因为mutex锁而同步更改。也可以说,这不是另一个。

但是,如果是引用,就没有问题,这很容易理解,比如在循环中打印print(i+二、什么,什么都可以。还是那个引用的?

当然, python中的循环也可以改变循环次数,重点是这句话——迭代器建立的内存索引表指向可迭代对象。

让我们来看看列表,比如

a=[1,2,3,4]

这个a列表本质上是对a[0],a[1],a[2],a[4]引用,由于列表本身是一个可迭代对象,我们可以改变列表(可迭代对象)的内部引用

count=0
foriina:
a[1:]=[1]
count+=1
print(count)

count 的结果为2

而上面的\color{red}{range}我们不能操作它的内部。第一个i是逐一查找内存索引表,第二个i是新对象

至于列表,我们直接改变了可迭代对象的结构,即内存索引表本身也发生了变化。

while

当条件满足时,Python中的while循环就会一直执行,当条件不满足时,就会停止

例如

whileTrue:
print(1)

上面的例子是一个死循环。

相关文章

手把手教你使用python中的循环for和while

手把手教你使用python中的循环for和while

2025-09-30
详解Python面向对象编程之类、实例、方法

详解Python面向对象编程之类、实例、方法

2025-09-30
Python中lambda表达式的优缺点及使用场景

Python中lambda表达式的优缺点及使用场景

2025-09-29
详解json.dumps中文乱码问题

详解json.dumps中文乱码问题

2025-09-29
Python和单元测试那些事儿

Python和单元测试那些事儿

2025-09-29
Python正则表达式findall函数详解

Python正则表达式findall函数详解

2025-09-29