Найти - Пользователи
Полная версия: Вычисление значений
Начало » Python для новичков » Вычисление значений
1
Evgeny_python
Только начал разбираться с помощью книги Доусона
Почему не работает? Подскажите пожалуйста

#Программа “Бесполезные факты”
name=input (“Как тебя зовут?”)
age= int(input (“Сколько тебе лет?”))
weight= int(input (“Хорошо, и последний вопрос. Сколько весишь?”))
quote = name
print (“\n\n Если бы поэт Пушкин адресовал тебе письмо, он бы обратился к тебе так:” + (quote.lower()))
print (“Если бы поэт Пушкин адресовал тебе письмо, он бы обратился к тебе так:” + (quote.upper()))
print (name*5)
seconds = int(seconds)
seconds = (age * 365 * 24 * 60 * 60)

print( “\nTвoй нынешний возраст - свыше”+seconds+ “секунд.”)

input (“Для завершения теста нажмите Enter”)


Python 3.1 (r31:73574, Jun 26 2009, 20:21:35) on win32
Type “copyright”, “credits” or “license()” for more information.
>>> ================================ RESTART ================================
>>>
Как тебя зовут?женя
Сколько тебе лет?2
Хорошо, и последний вопрос. Сколько весишь?2


Если бы поэт Пушкин адресовал тебе письмо, он бы обратился к тебе так:женя
Если бы поэт Пушкин адресовал тебе письмо, он бы обратился к тебе так:ЖЕНЯ
женяженяженяженяженя
Traceback (most recent call last):
File “C:\Users\Евгений\Desktop\Бесполезные факты.py”, line 9, in <module>
NameError: name ‘seconds’ is not defined
>>>
PEHDOM
потому что seconds = int(seconds) это что???
Наверное вы хотели age = int(age), хотя это тоже лишнее, у вас же age= int(input (“Сколько тебе лет?”))
Evgeny_python
Тут я seconds = int(seconds) задаю тип переменной, а она пишет что она не определена.
ZerG
134 пост с ошибкой по книге Доусона.
134 ответ! Читайте и учите по Лутцу.
Vlad_Ki
Evgeny_python
seconds = int(seconds)
Потому что до этого момента она не определена. Ты пишешь int(seconds) до того, как определил переменную seconds
PEHDOM
Не нужно задавать тип переменной, это излишне. В питне она сама примет тот тип значение которого вы ей присвоите.
напишете a=5 она будет int, напишете a='Вася' она станет строкой.
если уж так сильно хочеться обьявить переменную напишите seconds = int(), хотя повторюсь это излишне, в питоне не нужно заранее обьявлять перемнную и ее тип чтобы присвоить ей значение.
Evgeny_python
Тогда не считает
Результат на снимке
PEHDOM
это вы гдето нахомутали, скопировал ваш “пример” поправил кавычки, все работает
 #Программа “Бесполезные факты”
name = input('Как тебя зовут?')
age = int(input ('Сколько тебе лет?'))
weight = int(input ('Хорошо, и последний вопрос. Сколько весишь?'))
quote = name
print ('\n\n Если бы поэт Пушкин адресовал тебе письмо, он бы обратился к тебе так:' + (quote.lower()))
print ('Если бы поэт Пушкин адресовал тебе письмо, он бы обратился к тебе так:' + (quote.upper()))
print (name*5)
#seconds = int(seconds)
seconds = str(age * 365 * 24 * 60 * 60)
print( '\nTвoй нынешний возраст - свыше'+seconds+ 'секунд.')
input ('Для завершения теста нажмите Enter')
вывод:
 Если бы поэт Пушкин адресовал тебе письмо, он бы обратился к тебе так:фф
Если бы поэт Пушкин адресовал тебе письмо, он бы обратился к тебе так:ФФ
фффффффффф

Tвoй нынешний возраст - свыше94608000секунд.
предполагаю что вы заменили age = int(input ('Сколько тебе лет?')) на age = input ('Сколько тебе лет?')
Чего делать не следовало, input возвращает строку ,а int уже преобразовывает строку в число.Питон позволяет строки суммировать или умножать в итоге оперции age * 365 * 24 * 60 * 60 у вас вышло туева хуча двоек.
marvellik
ненужная строка дающая ошибку
 seconds = int(seconds)
 quote = name
даже эта строка лишняя. зачем создавать еще одну переменную и передавать ей значение другой?
проще в ответ вывести
 #Программа “Бесполезные факты”
name = input('Как тебя зовут? ')
age = int(input ('Сколько тебе лет? '))
weight = int(input ('Хорошо, и последний вопрос. Сколько весишь? '))
print ('\n\n Если бы поэт Пушкин адресовал тебе письмо, он бы обратился к тебе так:' ,name.lower())
print ('Если бы поэт Пушкин адресовал тебе письмо, он бы обратился к тебе так:' ,name.upper())
print (name*5)
seconds = age * 365 * 24 * 60 * 60
print( '\nTвoй нынешний возраст - свыше',seconds, 'секунд.')
input ('Для завершения теста нажмите Enter')
Evgeny_python
Спасибо, друзья! Вы очень помогли! Разобрался!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB