Форум сайта python.su
0
Добрался до 5ой задачи, и на ней сдался и подсмотрел решение:
Решение:
import pickle input = open('banner.p', 'rb') obj=pickle.load(input) print(type(obj[0])) for lines in obj: line=[ch * count for ch, count in lines] print ("".join(line))
##### ##### #### #### #### #### #### #### #### #### #### #### #### #### #### #### ### #### ### ### ##### ### ##### ### ### #### ### ## #### ####### ## ### #### ####### #### ####### ### ### #### ### ### ##### #### ### #### ##### #### ##### #### ### ### #### ### #### #### ### ### #### #### #### #### ### #### #### ### #### #### ### #### #### #### #### ### ### #### #### #### #### ## ### #### #### #### #### #### ### #### #### #### #### ########## #### #### #### #### ############## #### #### #### #### ### #### #### #### #### #### #### #### #### #### #### #### ### #### #### #### #### #### #### ### #### #### #### ### #### #### #### #### ### #### ### ## #### #### ### #### #### #### #### #### ### ## #### ### ## #### #### ########### #### #### #### #### ### ## #### ### ###### ##### ## #### ###### ########### ##### ### ######
for lines in obj: line = [ch * count for ch, count in lines] print "".join(line)
[[(' ', 95)], [(' ', 14), ('#', 5), (' ', 70), ('#', 5), (' ', 1)], [(' ', 15), ('#', 4), (' ', 71), ('#', 4), (' ', 1)], [(' ', 15), ('#', 4), (' ', 71), ('#', 4), (' ', 1)], [(' ', 15), ('#', 4), (' ', 71), ('#', 4), (' ', 1)], [(' ', 15), ('#', 4), (' ', 71), ('#', 4), (' ', 1)], [(' ', ... ] line = [ch * count for ch, count in lines]
Отредактировано Valgard (Июль 1, 2017 01:09:51)
Офлайн
1
line = [ch * count for ch, count in lines]
Офлайн
0
Спасибо, доходчиво. Погуглил, оказалось это такая штука как генератор, я с ними раньше не был знаком.
Офлайн