我正在编写一个函数来询问用户的日期。我希望用户能够以熟悉的格式输入日期:MM-DD-YYYY
我尝试过多种变体,但却未能成功计算增量计算中的天数差异。我的尝试已经返回了许多错误,主要是我在尝试计算差异时无法传递str参数。
在MM-DD-YYYY中输入日期输入的最佳方法是什么,同时减去返回YYYY-MM-DD的.today(),最终返回两个日期之间的天数?
感谢您的所有输入! (使用.PY 3.6)
注意:下面的代码可以使用但不允许美国日期格式约定。
def get_days_since_last_app():
then = datetime.strptime(input("What is the date of your last credit "
"card application? e.g. YYYY-MM-DD - 2017-07-26 "), '%Y-%m-%d')
today = datetime.today()
delta = then - today
print(abs(delta.days))
return abs(delta)
以下是允许用户在MM-DD-YYYY输入中输入日期时不起作用的代码。我试过在int&s和str之间插入变量而没有运气。
Error:
TypeError: unsupported operand type(s) for -: 'datetime.datetime' and 'str'
Code:
def get_days_since_last_app():
then = datetime.strptime(input("What is the date of your last credit "
"card application? e.g. MM-DD-YYYY - 07-26-2017 "),
'%m-%d-%Y')
today = arrow.now().format('MM-DD-YYYY')
delta = then - today
print(arrow.now().format('MM-DD-YYYY'))
print(delta)
print(abs(delta.days))
return abs(delta)
答案 0 :(得分:1)
def get_days_since_last_app():
then = pd.to_datetime(datetime.strptime(input("What is the date of your last credit "
"card application? e.g. YYYY-MM-DD - 2017-07-26 "), '%Y-%m-%d'))
today = pd.to_datetime(datetime.now().strftime('%Y-%m-%d'))
delta = (then - today)
print(delta.days)
我尝试根据问题编写代码。这是你正在寻找的吗?