从开始日期获取日期名称

时间:2019-10-15 10:25:46

标签: python-3.x datetime python-datetime python-dateutil

我正在开发课程应用程序。在我的应用中,如果学生注册了新课程,则老师必须输入该学生的开始课程日期。

并且在此应用中,学生可以选择想向老师学习的日期。 例如:学生希望每周一,周一,周二和周五学习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 个答案:

答案 0 :(得分:1)

您可以获得今天的工作日。更多信息here

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')

答案 1 :(得分:1)

 weekday = today.weekday()

从星期一= 0开始,结果为整数。

您可以在'if'语句中直接使用此变量。

if weekday == 0 or weekday == 1 or weekday == 4:
    print('please, pay it')