Найти - Пользователи
Полная версия: цикл фор
Начало » Python для новичков » цикл фор
1
aleks14
 i = 2
while i < 14:
	print(i)
подскажите как запустить такой же бесконечный цикл через for
думал как та так
 a=[2]
for i in a:
    if i<=2:
        print(i)
scidam
Можно попробовать так, но это плоховато, т.к. массив a растет:

 for i in a:
    a.append(i)
    print(i)

можно еще через генератор, но к while вернемся тогда неявно:

 def itera():
    while 1: yield 2
for i in itera():
    print(i)

doza_and
Сделть бесконечный итератор просто - реализуете next который никогда не дает stopiteration.

А тут по смыслу подойдет и itertools.cycle
ZerG
Чото не понял вопрос

 while True:
    print('ololo')
Не то?
aleks14
ZerG
Чото не понял вопрос
надо туже задачу решить через цикл фор
aleks14
есть врянт сделать тоже самое через if и булитовые операторы?
ZerG
 from itertools import takewhile, count
for i in takewhile(lambda x : not thereIsAReasonToBreak(x), count()):
    pass # or something else
oreol
Я понимаю, что есть задача через for, но какой в этом смысл. Цикл for нужен для перебора, а while работает пока булево значение TRUE.
К примеру while:
 i = 0
while i < 100:
    print('{0}: {1:5}'.format(i, i**100))
    i += 1
for:
 L = list(range(0, 100))
for i in L:
    print('{0}: {1:5}'.format(i, i**100))
ZerG
oreol
ТС страдает походу.
Ему нужен ебсконечный цикл на форе
я даже и не знаю проще всего взять какойто range с диким числом перебор которого условно длинее жизни…
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB