Форум сайта python.su
0
есть код, выводящий традиционный треугольник из звездочек, вот такой:
* *** ***** ******* *********
for z in range(1,10,2): print(" " * ((10-z)//2) + "*" * z)
#======== def bubu(): for z in range(1,10,2): yield print(" " * ((10-z)//2) + "*" * z) kuku = bubu() assert next(kuku) == " * " assert next(kuku) == " *** " assert next(kuku) == " ***** " assert next(kuku) == " ******* " assert next(kuku) == "*********"
#======== def bubu(): for z in range(1,10,2): yield print( ("*" * z).center(9) ) kuku = bubu() """ assert next(kuku) == " * " assert next(kuku) == " *** " assert next(kuku) == " ***** " assert next(kuku) == " ******* " assert next(kuku) == "*********" """ kuku2 = bubu() assert list(kuku2) == """ * *** ***** ******* ********* """
Отредактировано Florenzo (Сен. 19, 2020 23:16:20)
Офлайн
857
FlorenzoФункция print() возвращает значение.yield print(" " * ((10-z)//2) + "*" * z)
>>> x = print('abc') abc >>> print(x) None >>>
Отредактировано py.user.next (Сен. 19, 2020 23:27:02)
Офлайн