Получить название дня от даты начала - PullRequest
0 голосов
/ 15 октября 2019

Я разрабатываю приложение для курса. В моем приложении, если студент регистрируется на новый курс, учитель должен ввести начальную дату курса для студента.

И в этом приложении студент может выбрать день, который он хочет выучить,учитель. Например: студент хочет выучить 3 дня для каждой недели, понедельника, вторника и пятницы.

И за день, который студент берет, он должен заплатить учителю в этот день.

Итак, я хочу, чтобы мое приложение могло автоматически отображать, в какой день студент должен платить за обучение учителю.

Здесь мне нужно следующее: если учитель ввел дату начала курса 20-10-2019 (%d-m-Y%) , и дни, которые студент берет в понедельник, вторник и пятницу, я хочу напечатать: print('please, pay it') каждую неделю в выбранный день.

enter image description here

Итак, я хочу что-то вроде этого:

import datetime

starting_course_date = datetime.datetime.strptime("20-10-2019", "%d-%m-%Y")

student_taking_days = [{'day': 'Monday'}, {'day': 'Tuesday'}, {'day': 'Friday'}]
today = datetime.datetime.utcnow()

if today > starting_course_date and today is one of day on the student_taking_days:
    print('please, pay it')

Пожалуйста, оцените любой ответ, источник или ссылку на учебник:)

Ответы [ 2 ]

1 голос
/ 15 октября 2019
 weekday = today.weekday()

Это дает результат в виде целого числа, начиная с понедельника = 0.

Вы можете напрямую использовать эту переменную в своем операторе if.

if weekday == 0 or weekday == 1 or weekday == 4:
    print('please, pay it')
1 голос
/ 15 октября 2019

Вы можете получить будний день вашего сегодня. Подробнее здесь

import datetime
weekday = datetime.datetime.today().weekday()
if (weekday in [0, 1, 4]): // 0 is monday, 1 is tuesday and 4 is friday
    print('please, pay it')

Вы можете получить название дня , например, используя strftime :

weekday_name = weekday.strftime("%A")
if (weekday_name in ['Monday', 'Tuesday', 'Friday']):
    print('please, pay it')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...