Python Windows用户:未找到csv文件

Python Windows用户:未找到csv文件,python,csv,file-not-found,Python,Csv,File Not Found,我正在尝试从2个文件夹中提取CSV文件。以下代码返回一条错误消息: [Errno 2]文件b'aws_hourly_20170501.csv'不存在:b'aws_hourly_20170501.csv' 当我使用windows时,我认为这可能是一个语法问题。有什么想法吗? 谢谢大家! 我想这与Windows本身无关。 来,你在干什么 filepath=[f代表listdir(path)中的f,如果f.endswith('.csv')] 其中,filepath列表只是名为path的目录下csv

我正在尝试从2个文件夹中提取CSV文件。以下代码返回一条错误消息:

[Errno 2]文件b'aws_hourly_20170501.csv'不存在:b'aws_hourly_20170501.csv'

当我使用windows时,我认为这可能是一个语法问题。有什么想法吗?
谢谢大家!

我想这与Windows本身无关。
来,你在干什么

filepath=[f代表listdir(path)中的f,如果f.endswith('.csv')]
其中,
filepath
列表只是名为
path
的目录下csv文件的名称列表。
你应该保持原样

filepath=[os.path.join(path,f)表示listdir(path)中的f,如果f.endswith('.csv')]
这将使
文件路径
成为所有文件及其各自路径的列表。

PS:别忘了先导入操作系统模块

非常感谢您的修复程序运行得非常好!我还尝试只连接给定气象站的数据。station number是我的数据帧中的一个特定列。你知道实现这一目标的方法吗?它将以这种方式开始:
station=int(输入(“station number?”)
,然后在代码中包含站点选择,以便返回行数较少的数据帧。在这段代码的另一个较慢版本中,我用以下代码调用了电台号码:
df=df[df.station\u number==station]
,但我不确定在这种情况下将选择应用到哪里`hi@GuillaumeRouja,我无法理解这个查询。你能再详细一点吗?当然,@Siddhesh Suhas Sathe,我已经用选择的电台编辑了上面的代码。我想插入一行代码,这样我就只能使用类似于
df=df[df.station\u number==station]
的东西来提取特定站点的数据,所以实际上我不需要连接所有数据,而是同时使用
map(pd.read\u csv,filepath)
&连接,我想在中间添加一个步骤来选择要连接的行,因为运行时间很长,所以如果有意义的话,我想连接较少的数据。这个想法是让basic有一个代码来实现这一点:
df=pd.concat(map(pd.read\u csv,filepath)),如果df=df[df.station\u number==station]
(我将站点作为向用户询问的参数。它对应于我希望在730 csv文件中连接的特定行)
station = int(input("station number? "))
def Datastations (station,path): 
    filepaths = [os.path.join(path, f) for f in listdir(path) if 
    f.endswith('.csv')]
    ***Selection of the station***
    df = pd.concat(map(pd.read_csv, filepaths))
    return (df)

df1 = Datastations(station,"refdata/obs") 
df2 = Datastations(station,"refdata/BoM_ETA_20160501-20170430/obs")**