Python 如何在列表和字符串中确定约定的日期?

Python 如何在列表和字符串中确定约定的日期?,python,Python,我写了一个需要翻译日期格式的程序。如果输入的日期格式不正确,则打印的格式无效。它没有出现 from datetime import datetime date_input = input('Please enter a date of form(mm/dd/yyyy): ') date_object = datetime.strptime(date_input, '%m/%d/%Y') date1 = datetime.strftime(date_input,'%m/%d') if input

我写了一个需要翻译日期格式的程序。如果输入的日期格式不正确,则打印的格式无效。它没有出现

from datetime import datetime
date_input = input('Please enter a date of form(mm/dd/yyyy): ')
date_object = datetime.strptime(date_input, '%m/%d/%Y')
date1 = datetime.strftime(date_input,'%m/%d')
if input == 'date_object':
    print(date_object.strftime('%B %d, %Y'))
elif input == date1:
 print('invaild date format')

我不知道它有什么问题。

您的条件是检查您的输入是否等于您正在创建的date_对象(该对象被解析为您在其第二个参数中给出的格式)。您确定要执行此操作吗?(输入是一个函数,而不是字符串date_输入)并且您只检查此条件语句的两个案例,是否最好检查您的输入是否与您正在计算的格式相同,然后在else中针对该情况打印出任何其他情况下的错误消息,该情况不是您想要的


干杯

你为什么不这样做:

from datetime import datetime
date_input  = input('Please enter a date of form(mm/dd/yyyy): ')
date_object = datetime.strptime(date_input, '%m/%d/%Y')

encoded_date_input = (str(date_object.month)).zfill(2) + '/' +(str(date_object.day)).zfill(2)+ '/' +str(date_object.year)
if encoded_date_input == date_input:
    print(date_object.strftime('%B %d, %Y'))
else:
    print('invaild date format')
试试这个


从日期时间导入日期时间
尝试:
日期\输入=输入('请输入格式的日期(mm/dd/yyyy):')
date_object=datetime.strTime(日期_输入,“%m/%d/%Y”)
除:
打印('无效的日期格式')

如果输入=='date\u object':
-我不知道您在这里尝试测试什么,但是
input
是一个函数的名称,因此您正在测试函数是否等于字符串。您的程序没有输出,因为您的
if
elif
条件都不可能为真。