Уведомления

Группа в Telegram: @pythonsu

#1 Март 28, 2010 10:45:36

Dmitriy00782
От:
Зарегистрирован: 2010-03-23
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите плиз

Короче начал изучать книгу “Марк Саммерфилд - Программирование на Python 3. Подробное руководство”. В этой книжке есть пример. Немогу понять как внести число чтобы оно “распечаталось по большому” где его задать или ввести. Вот код:

import sys

Zero = [" *** ",
" * * ",
"* *",
"* *",
"* *",
" * * ",
" *** "]
One = [" * ", "** ", " * ", " * ", " * ", " * ", "***"]
Two = [" *** ", "* *", "* * ", " * ", " * ", "* ", "*****"]
Three = [" *** ", "* *", " *", " ** ", " *", "* *", " *** "]
Four = [" * ", " ** ", " * * ", "* * ", "******", " * ",
" * "]
Five = ["*****", "* ", "* ", " *** ", " *", "* *", " *** "]
Six = [" *** ", "* ", "* ", "**** ", "* *", "* *", " *** "]
Seven = ["*****", " *", " * ", " * ", " * ", "* ", "* "]
Eight = [" *** ", "* *", "* *", " *** ", "* *", "* *", " *** "]
Nine = [" ****", "* *", "* *", " ****", " *", " *", " *"]

Digits = [Zero, One, Two, Three, Four, Five, Six, Seven, Eight, Nine]

try:
digits = sys.argv[1]
row = 0
while row < 7:
line = ""
column = 0
while column < len(digits):
number = int(digits[column])
digit = Digits[number]
line += digit[row] + " "
column += 1
print(line)
row += 1
except IndexError:
print("usage: bigdigits.py <number>")
except ValueError as err:
print(err, "in", digits)
Helpaните.



Офлайн

#2 Март 28, 2010 10:52:30

Ed
От:
Зарегистрирован: 2008-12-13
Сообщения: 1032
Репутация: +  13  -
Профиль   Отправить e-mail  

Помогите плиз

В командной строке.



Офлайн

#3 Март 28, 2010 11:23:27

UsCr
От:
Зарегистрирован: 2009-11-04
Сообщения: 216
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите плиз

В виде параметра при запуске скрипта из командной строки.



Офлайн

#4 Март 28, 2010 11:32:34

Dmitriy00782
От:
Зарегистрирован: 2010-03-23
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите плиз

А по другому никак? может типа input? А то у меня командная строка что-то неправильно работает. Захожу в нее а там уже прописанпуть в папку мои документы и ничё не поделаешь.



Отредактировано (Март 28, 2010 11:34:30)

Офлайн

#5 Март 28, 2010 11:59:09

UsCr
От:
Зарегистрирован: 2009-11-04
Сообщения: 216
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите плиз

Dmitriy00782
Короче начал изучать книгу “Марк Саммерфилд - Программирование на Python 3. Подробное руководство”.
Вот и перепишите так, как вам надо. Число для вывода должно оказаться в переменной digits. Если будете переделывать под input, то обработку исключений можно будет убрать.



Офлайн

#6 Март 28, 2010 12:32:24

knkd
От:
Зарегистрирован: 2009-06-14
Сообщения: 225
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите плиз

Dmitriy00782
А то у меня командная строка что-то неправильно работает. Захожу в нее а там уже прописанпуть в папку мои документы и ничё не поделаешь.
:D



Офлайн

#7 Март 28, 2010 12:54:58

Dmitriy00782
От:
Зарегистрирован: 2010-03-23
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите плиз

Спасибо большое всё работает.



Офлайн

#8 Фев. 16, 2011 14:43:25

Арртем
От:
Зарегистрирован: 2011-02-08
Сообщения: 10
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите плиз

Всем привет!
Уважаемые форумчане помогите мне разобраться. Каким образом ввод целых цисел через модуль sys.argv отождествляется со строками:
Zero=…
One=…
Two=…
и т.д
Ведь в командной строке вводится integer ( т.е 0, 1, 2) а не названия строк Zero, One, Two …
Иначе говоря откуда программа знает что 0 это Zero, 1 это One, и т.д.



Отредактировано (Фев. 16, 2011 14:48:01)

Офлайн

#9 Фев. 16, 2011 15:18:28

Soteric
От:
Зарегистрирован: 2010-09-19
Сообщения: 352
Репутация: +  20  -
Профиль   Отправить e-mail  

Помогите плиз

Digits = [Zero, One, Two, Three, Four, Five, Six, Seven, Eight, Nine]
Zero, One, Two, … являются элементами массива. У каждого элемента есть его порядковый номер в массиве (индекс), выраженный числом. Соответственно
Digits соответствует Zero
Digits ~ One
и так далее.



Офлайн

#10 Фев. 17, 2011 13:14:32

Арртем
От:
Зарегистрирован: 2011-02-08
Сообщения: 10
Репутация: +  0  -
Профиль   Отправить e-mail  

Помогите плиз

Спасибо, теперь стало ясно.

Только почему “массива” а не “списка списков”?



Отредактировано (Фев. 17, 2011 13:51:54)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version