Я довольно смущен тем, как преобразовать эту программу в понимание списка. Какие-нибудь советы?конвертировать программу в список постижения
Вот оригинальный код, который я написал (также, я новичок в python, поэтому вы можете сказать мне, если это отстой, я не против). Код должен использовать встроенную функцию chr() для возврата строка, которая при печати, является ASCII-диаграмма, четыре записи в поперечнике. (только с использованием значений ASCII от 32 до 126 включительно)
def GiveAsciiChart5():
count = 4
for value in range(32, 127):
count += 1
print " |ASCII Value|: ", "|",(value),"|", " |Character|: ", "|",chr(value),"|",
if count % 4 == 0:
print "\n",
#print " |ASCII Value|: ", "|",(value),"|", " |Character|: ", "|",chr(value),"|",
def Main():
GiveAsciiChart5()
if __name__ == '__main__':
Main()
Вот моя попытка сделать список понимание ... это, очевидно, не Работа. Я довольно смущен тем, где ввести переменную count? Я пытаюсь уменьшить его, используя списки и str.join().
def GiveAsciiChart6():
count = 3
a = [ (i, chr(i)) for i in range(32,127)]
for count in a:
if count % 4 == 0:
print "\n"
print " |ASCII Value|: ", "|",(i),"|", " |Character|: ", "|",chr(i),"|",
def Main():
GiveAsciiChart6()
if __name__ == '__main__':
Main()
Я знаю, что есть способы, чтобы пойти и довольно ужасно в настоящее время. Я просто застрял и запутался в том, как отформатировать его таким образом ... любые советы приветствуются, не ожидая полных решений, поскольку я хотел бы узнать и понять, что происходит. Спасибо!
вы могли бы быть более конкретным относительно того, что происходит не так во втором версия? – jaynp
создайте функцию 'foo', так что' foo (i) 'возвращает нужную строку. Но помните, что такие команды, как 'print', не входят в понимание списка. понимание - это выражения *. а не программ. – Elazar
@ user1850672 Вторая версия должна делать то же самое. Я просто пытаюсь привыкнуть к использованию списков, но у меня возникают проблемы с ними, когда они становятся более сложными, чем простые циклы через списки. – user2376566