Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 19, 2012 18:31:41

bellerfont
Зарегистрирован: 2012-11-19
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Срочно нужна помощь

Я новенький тут да и в питоне тоже, надо сделать программу которая будет выводит сколько дней мы уже прожили, кода будем вводит свои данные. Год рождение месяц день. Не стоит писать очень сложную программу, поскольку мы только elif и if прошли,а тут все монстры напишут сложные навено сам препод не поймет PLease help.

Отредактировано bellerfont (Ноя. 19, 2012 18:33:34)

Офлайн

#2 Ноя. 19, 2012 19:32:34

sergeek
Зарегистрирован: 2012-06-26
Сообщения: 470
Репутация: +  43  -
Профиль   Отправить e-mail  

Срочно нужна помощь

from datetime import date
def days_old(year, month , day):
    return  (date.today() - date(year,month,day)).days
days_old(1989,03,19)
Out[37]: 8646

Офлайн

#3 Ноя. 19, 2012 19:41:08

bellerfont
Зарегистрирован: 2012-11-19
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Срочно нужна помощь

можно по подробней

sergeek

Офлайн

#4 Ноя. 19, 2012 19:47:14

sergeek
Зарегистрирован: 2012-06-26
Сообщения: 470
Репутация: +  43  -
Профиль   Отправить e-mail  

Срочно нужна помощь

программа:

from datetime import date
def days_old(year, month , day):
    return  (date.today() - date(year,month,day)).days
print(days_old(1989,03,19))
результат ее выполнения
8646
что именно непонятно?

Отредактировано sergeek (Ноя. 19, 2012 19:51:17)

Офлайн

#5 Ноя. 19, 2012 20:20:20

bellerfont
Зарегистрирован: 2012-11-19
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Срочно нужна помощь

ну def что за вешь мы не проходили, return тоже хотя в с++да. from & Import тоже. мы шас просто через input)))

sergeek
print(days_old(1989,03,19))

Офлайн

#6 Ноя. 19, 2012 20:29:10

sergeek
Зарегистрирован: 2012-06-26
Сообщения: 470
Репутация: +  43  -
Профиль   Отправить e-mail  

Срочно нужна помощь

from datetime import date
загружает класс date из модуля datetime
def
объявление функции
days_old
ее имя
(year, month , day)
ее аргументы
return
возращает значение при ее вызове
days_old(1989,03,19)
вызывает функцию с аргументами год месяц день
print(days_old(1989,03,19))
печатает результат вызова функции

Офлайн

#7 Ноя. 19, 2012 20:35:51

bellerfont
Зарегистрирован: 2012-11-19
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Срочно нужна помощь

ok,спасибо большое. Если что буду обращаться.

sergeek

Офлайн

#8 Ноя. 19, 2012 20:37:30

sergeek
Зарегистрирован: 2012-06-26
Сообщения: 470
Репутация: +  43  -
Профиль   Отправить e-mail  

Срочно нужна помощь

from datetime import date
print((date.today() - date(*[int(date) for date in raw_input('enter your date of birth YYYY MM DD').split()])).days)
через инпут

Отредактировано sergeek (Ноя. 19, 2012 20:38:48)

Офлайн

#9 Ноя. 19, 2012 20:42:46

bellerfont
Зарегистрирован: 2012-11-19
Сообщения: 5
Репутация: +  0  -
Профиль   Отправить e-mail  

Срочно нужна помощь

класс, split ()]() не понял

sergeek

Офлайн

#10 Ноя. 19, 2012 20:51:17

sergeek
Зарегистрирован: 2012-06-26
Сообщения: 470
Репутация: +  43  -
Профиль   Отправить e-mail  

Срочно нужна помощь

raw_input('enter your date of birth YYYY MM DD')
вводится дата 1989 03 19
raw_input('enter your date of birth YYYY MM DD').split()
.split() разделяет введенную строку на список ->
['1989','03','19']
[int(date) for date in raw_input('enter your date of birth YYYY MM DD').split()]
преобразует элементы списка из строк в числа ->
[1989,03,19]
date(*[int(date) for date in raw_input('enter your date of birth YYYY MM DD').split()])).
звездочка применят этот список в качестве аргументов для класса date
то есть получается
date(*[19,03,1989])
тоже самое что
date(19,03,1989)
остальное ты уже знаешь

Отредактировано sergeek (Ноя. 19, 2012 20:54:02)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version