Python使用for实现无限循环的多种方式汇总
Channing Lewis 人气:0Python使用for实现无限循环
# 方法1.1:借助循环遍历列表的cycle方法 from itertools import cycle for _ in cycle([1]): print('h') # 方法1.2:借助无穷迭代器repeat from itertools import repeat for _ in repeat(None): # repeat(elem,[n]),对elem迭代n次,n不传则默认无限次 print('h') # 方法1.3:借助计数器,但是事实上只会循环到计数值大到将内存撑爆时 from itertools import count for _ in count(): print('h') # 方法2.1:借助iter,int函数每次迭代返回的都是0,始终不会等于哨兵值1,所以会无限迭代 for _ in iter(int, 1): print('h') # int函数和1只是个例子,可以传入其它可调用对象和哨兵值,只要迭代值始终不等于哨兵值就可以。 # 方法2.2:自己定义一个无穷迭代器 class InfIter: def __iter__(self): return self def __next__(self): pass for _ in InfIter(): print("h") # 方法3:不停地往列表尾部添加元素,但是事实上只会循环到列表大到将内存撑爆时 inf_list = [1] for _ in inf_list: print('h') inf_list.append(1)
python遍历循环与无限循环
循环结构:
遍历循环
for <循环变量>in<遍历结构>: 语句块
由保留字for和In组成,完整遍历所有元素后结束
每次循环,所获得元素放入循环变量,并执行一次语句块
计数循环(N次):for i in range(N):语句块 0-N-1
for i in range(M,N,K): i由M开始,到N-1,并以K为步长
字符串遍历循环: for c in s :语句块
s是字符串,遍历字符串每个字符,产生循环
列表遍历循环: for item in ls:语句块
ls是列表,遍历列表每个元素,产生循环
文件遍历循环: for i in fi: 语句块
fi是文件标识符,遍历其每行,产生循环
无限循环
由条件控制的循环运行方式
while<条件>: 语句块
循环控制保留字
break 和continue
break
:跳出并结束当前整个循环,执行循环后的语句(一个break只能跳出一层循环)continue
:结束当次循环,进行下一次循环
循环的高级用法
循环与else:当循环没有被Break语句退出时,执行else
else语句块作为“正常”完成循环的奖励
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
加载全部内容