Python datetime操作在笔记本中工作,但在导出为.py脚本后不工作
在jupyter ipython笔记本上测试了这段代码之后,我创建了一个.py文件,对我来说效果很好Python datetime操作在笔记本中工作,但在导出为.py脚本后不工作,python,pandas,datetime,Python,Pandas,Datetime,在jupyter ipython笔记本上测试了这段代码之后,我创建了一个.py文件,对我来说效果很好 import datetime as dt import pandas as pd def CheckTrend(tdate, px, trend, df): todaydate = dt.datetime.strptime(tdate,'%m/%d/%Y') todaydate = todaydate - dt.timedelta(days=6) df['Date'
import datetime as dt
import pandas as pd
def CheckTrend(tdate, px, trend, df):
todaydate = dt.datetime.strptime(tdate,'%m/%d/%Y')
todaydate = todaydate - dt.timedelta(days=6)
df['Date'] = pd.to_datetime(df['Date'], format='%m/%d/%Y')
mask = df['Date'] <= todaydate)
df = df.loc[mask]
return
我是Python编程的初学者,我能在这方面得到一些帮助吗?这似乎有点奇怪,也许可以尝试修改“趋势”文件,以便
todaydate=todaydate-dt.timedelta(天=6)
变成
todaydate=int(todaydate)-int(dt.timedelta(days=6))
我不确定您是否需要timedelta周围的第二个int,但我认为应该修复它,因为它似乎将“todaydate”视为一个字符串文件位置是什么?文件位置与我看到的所有脚本的文件夹相同,其中包含保存数据帧数据的csv文件。在调用CheckTrend函数之前,我试图打印出数据框,数据看起来很完美,因此读取csv肯定没有问题。只是尝试了一下,仍然得到相同的错误,它指向这一行,我不太明白为什么,原因错误消息文本似乎指向减法行,而不是此解析行。todaydate=dt.datetime.strTime(tdate,“%m/%d/%Y”)
import trend
import datetime as dt
df = pd.read_csv(filelocation, na_values=['na'], delimiter='\t', usecols=['Date','Type','Trend','Px'])
trend.CheckTrend('12/31/2006', 10, 0, df)