Решение на Генератори и итератори от Ангел Новоселски

Обратно към всички решения

Към профила на Ангел Новоселски

Резултати

  • 4 точки от тестове
  • 0 бонус точки
  • 4 точки общо
  • 6 успешни тест(а)
  • 8 неуспешни тест(а)

Код

# This Python file uses the following encoding: utf-8
def fibonacci():
a, b = 1, 1
while True:
yield a
a, b = b, a + b
def is_prime(a):
for i in range(2, a):
if a % i == 0:
return False
return True
def primes():
a = 2
while 1:
if is_prime(a):
yield a
a = a + 1
def alphabet(code=None, letters=None):
if letters:
for i in range(len(letters)):
yield letters[i]
elif code == 'bg':
for i in ['а', 'б', 'в', 'г', 'д', 'е', 'ж', 'з', 'и', 'й', 'к', 'л',
'м', 'н', 'о', 'п', 'р', 'с', 'т', 'у', 'ф', 'х', 'ц', 'ч',
'ш', 'щ', 'ъ', 'ь', 'ю', 'я']:
yield i
else:
for i in ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l',
'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'y', 'v', 'w', 'x',
'y', 'z']:
yield i

Лог от изпълнението

▸ Покажи лога

История (1 версия и 0 коментара)

Ангел обнови решението на 03.04.2015 15:49 (преди около 10 години)

▸ Покажи разликите
+# This Python file uses the following encoding: utf-8
+def fibonacci():
+ a, b = 1, 1
+ while True:
+ yield a
+ a, b = b, a + b
+
+
+def is_prime(a):
+ for i in range(2, a):
+ if a % i == 0:
+ return False
+ return True
+
+
+def primes():
+ a = 2
+ while 1:
+ if is_prime(a):
+ yield a
+ a = a + 1
+
+
+def alphabet(code=None, letters=None):
+ if letters:
+ for i in range(len(letters)):
+ yield letters[i]
+ elif code == 'bg':
+ for i in ['а', 'б', 'в', 'г', 'д', 'е', 'ж', 'з', 'и', 'й', 'к', 'л',
+ 'м', 'н', 'о', 'п', 'р', 'с', 'т', 'у', 'ф', 'х', 'ц', 'ч',
+ 'ш', 'щ', 'ъ', 'ь', 'ю', 'я']:
+ yield i
+ else:
+ for i in ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l',
+ 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'y', 'v', 'w', 'x',
+ 'y', 'z']:
+ yield i