今天看到一位兄弟问python代码怎么能一直循环下去。

import
os,time
#2
class
Ad:
def
__init__(
self
,
*
args):
self
.words
=
[
*
args]
def
meu(
self
):
for
i
in
self
.words:
os.system(
'clear'
)
print
(i)
time.sleep(
1
)
my
=
Ad(
'1.小米 永远相信美好的事情即将发生'
,
'2.路虎 与其原地回忆惊天动地,不如出发再次经历'
,
'3.奥迪A6 别人看到你的成就,我们看到你的奋斗'
,
'4.农夫山泉 农夫山泉有点甜'
,
'5.鸿星尔克 你的能量超乎你想像'
)
my.meu()
这个兄弟其实是明白要用while循环的,但是其实for循环也是可以一直循环下去的。
在别的语言中,for循环做无线循环是很简单的,但是其实在python中如果没有做研究应该是不会的。
先简单说一下while循环,非常简单。
while Ture:
my.menu()
就可以一直执行下去了。
然后for循环呢?
这里我们可以依赖一个函数库,itertools模块的cycle函数
import time
from itertools import cycle
cycle_iter = cycle([100, 200, 300])
for item in cycle_iter:
print(item)
time.sleep(1)
或者如果只是自己写的话,还是非常麻烦的。
首先其实可能会有许多人想到我们直接修改for i in range(1,2)中的i就行了呗。
for i in range(1,4):
print(i)
i=i-1
但是实际上是不可以的,这是因为我们虽然看这个这个变量是i但实际上跟我们后面的i是不同的,for里的i是在循环开始就已经设置好了的,是不会发生改变的。那就有人会问了,既然如此我们应该怎么做呢?不是说可以写无限循环么。
我们可以将in 后面的范围设置成一个可以变的量,比如说一个数组。当然可以有其他的类型,我就是举一个简单的例子。
list = [0]
for i in list:
print(i)
list.append(i+1)
通过改变list的长度,我们就可以通过for循环来实现无限循环了。如果有什么关于python的问题,可以在评论区留言,我会在看到的第一时间进行回复的。