Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python datetime操作在笔记本中工作,但在导出为.py脚本后不工作_Python_Pandas_Datetime - Fatal编程技术网

Python datetime操作在笔记本中工作,但在导出为.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'

在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'] = 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)