日期时间模块Python
我正在试验Python中的Datetime模块,并决定制作一个向前和向后计算天数的程序。相关代码:日期时间模块Python,python,datetime,Python,Datetime,我正在试验Python中的Datetime模块,并决定制作一个向前和向后计算天数的程序。相关代码: if bORf == 'f': howfarforward = input("How far forward would you like to count?: ") def countforward(howfarfor): day = datetime.date.today() day -= howfarfor print(day)
if bORf == 'f':
howfarforward = input("How far forward would you like to count?: ")
def countforward(howfarfor):
day = datetime.date.today()
day -= howfarfor
print(day)
countback(howfarfor)
我发现了错误
Traceback (most recent call last):
File "datecount.py", line 11, in <module>
countback(howfarback)
File "datecount.py", line 9, in countback
day -= howfarback
TypeError: unsupported operand type(s) for -=: 'datetime.date' and 'str'
不能从日期时间中减去字符串。首先尝试将其转换为时间增量。不能从日期时间中减去字符串。首先尝试将其转换为时间增量。使用,您需要: 使用,您需要:
代码的其余部分在哪里?很好,您将代码减少到了大部分-,但它不是完全自一致的,这使得一致性回答有点困难。代码的其余部分在哪里?很好,您将代码减少到了大部分-,但它不是完全自一致的,这使得一致性回答有点困难。
import datetime
print("Today is", datetime.date.today())
bORf = input("Would you like to count backwards or forwards? (b/f)")
if bORf == 'b':
howfarback = input("How far back would you like to count?: ")
def countback(howfarback):
day = datetime.date.today()
day -= howfarback
print(day)
countback(howfarback)
...
>>> import datetime
>>> howfarforward = int(input("How far forward would you like to count?: "))
How far forward would you like to count?: 4
>>> day = datetime.date.today()
>>> day = day + datetime.timedelta(days=howfarforward)
>>> day
datetime.date(2012, 3, 18)