Форум сайта python.su
0
Ребята, помогите, плиз! Пайтон только начинаю изучать. Еще ничего толком делать не начала, а уже какие-то непонятности(( в общем, нужно ввести дату рождения и ее же вывести. Вот код:
import datetime
userInput = input('Enter your birthday ‘)
birthday = datetime.datetime.strptime(userInput, ’%m/%d/%Y')
print(birthday)
вот я ввела данные:
Enter your birthday 25/5/1989
а вот и ошибка:
Traceback (most recent call last):
File “E
Date on the Python/Date”, line 12, in <module>
birthday = datetime.datetime.strptime(userInput, ‘%m/%d/%Y’)
TypeError: must be string, not int
В чем проблема, понять не могу! ((
Буду очень признательна за помощь)
Офлайн
857
Используй raw_input().
Офлайн
9
py.user.nextОна на тройке вроде пишет.
Используй raw_input().
Hrafova_AleksandraПросто в кавычках пишите дату. Только если используете формат ’%m/%d/%Y', то так и пишите месяц, день, год.
В чем проблема, понять не могу! ((
Отредактировано WoMax (Сен. 7, 2015 10:31:05)
Офлайн
857
WoMax
Она на тройке вроде пишет.
>>> s = input() 25/5/1989 >>> s 0 >>>
Офлайн
3
py.user.nextНепонятен Ваш сарказм…
>>> s = input()
25/5/1989
>>> s
0
>>>
Офлайн
221
Iskatel
Она пишет не на тройке, а на двойке. WoMax не прав в своих суждениях. Код который представил py.user.next - это не сарказм, а намек почему у ТС появилась это проблема.
Все дело в различии функций input на разных версиях питона. Достаточно первых строчек документации что бы выяснить правду, и объяснить результат который получается у py.user.next
python 2.7
input()
Equivalent to eval(raw_input(prompt)).
This function does not catch user errors. If the input is not syntactically valid, a SyntaxError will be raised. Other exceptions may be raised if there is an error during evaluation.
If the readline module was loaded, then input() will use it to provide elaborate line editing and history features.
Consider using the raw_input() function for general input from users.
python 3.4
input()
If the prompt argument is present, it is written to standard output without a trailing newline. The function then reads a line from input, converts it to a string (stripping a trailing newline), and returns that. When EOF is read, EOFError is raised.
If the readline module was loaded, then input() will use it to provide elaborate line editing and history features.
Офлайн
857
IskatelУ неё второй питон, потому что строку функция не принимает по причине int. Значит, это не строка. А как так могло получиться?
Может поясните для ноичков?
Отредактировано py.user.next (Сен. 9, 2015 04:48:41)
Офлайн
0
py.user.nextогромное спасибо за совет!
Именно в этом и была проблема. Очень-очень помгли!))) Вдохновленная и счастливая иду дальше))))
Офлайн