Python使用for实现无限循环的多种方式汇总

作者:Channing 时间:2023-04-30 15:15:11 

Python使用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语句块作为&ldquo;正常&rdquo;完成循环的奖励

来源:https://blog.csdn.net/lycwhu/article/details/125600760

标签:Python,for,无限循环
0
投稿

猜你喜欢

  • windows+apache+mod_python配置django运行环境

    2021-02-01 04:06:54
  • python多线程、网络编程、正则表达式详解

    2023-03-03 21:33:14
  • python 简单备份文件脚本v1.0的实例

    2022-05-01 01:47:53
  • python文件读取和导包的绝对路径、相对路径详解

    2021-04-12 03:27:05
  • JavaScript实现获取最近7天的日期的方法详解

    2024-04-27 15:20:59
  • python Django模板的使用方法

    2021-06-09 15:29:14
  • javascript面向对象技术基础(四)

    2010-02-07 13:15:00
  • python开发之list操作实例分析

    2023-04-17 16:07:33
  • 教你快速掌握SQL语言中游标的使用技巧

    2009-01-08 16:24:00
  • 比较详细的MySQL字段类型说明

    2024-01-20 16:13:02
  • Python技巧之四种多线程应用分享

    2021-12-04 12:11:57
  • Python类中的装饰器在当前类中的声明与调用详解

    2021-03-07 10:29:35
  • python中的生成器实现周期性报文发送功能

    2023-02-07 23:15:12
  • 详解python之配置日志的几种方式

    2022-11-02 14:32:30
  • DW中如何使用Library

    2007-02-03 11:39:00
  • 网马解密大讲堂——网马解密初级篇

    2009-09-16 14:45:00
  • js算法实例之字母大小写转换

    2024-04-16 08:52:05
  • 在matlab中创建类似字典的数据结构方式

    2021-07-08 01:22:53
  • MySQL 启动成功但未监听端口的解决方法

    2024-01-29 00:01:55
  • PHP abstract 抽象类定义与用法示例

    2023-06-28 03:52:44
  • asp之家 网络编程 m.aspxhome.com