Python中的Glob包。文件路径附加为\\,而不是/。应为正斜杠而不是2个反斜杠

2024-06-28 20:51:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在使用globapi将所有CSV加载到一个列表中。执行代码后,我在文件路径的data_list append\中实现了结果,而不是在csv数据文件名之前

我的python代码文件位于以下位置:C:\Documents\python workspace\analysis.py

我的4个csv数据位于以下位置:

  1. C:\Documents\python workspace\data\vitalstrike\user site export\data-1.csv

  2. C:\Documents\python workspace\data\vitalstrike\user site export\data-2.csv

  3. C:\Documents\python workspace\data\vitalstrike\user site export\data-3.csv

  4. C:\Documents\python workspace\data\vitalstrike\user site export\data-4.csv

下面是我将文件加载到列表中的代码

import pandas as pd
import pandas_profiling
import glob

data_list = glob.glob('data/vitalstrike/user-site-export/data-*')
display(data_list)

在执行代码之后,我意识到数据列表中的结果将csv数据文件名附加为“\\”而不是“/”。有没有什么建议可以强迫你这么做

In[15]: display(data_list)
['data/vitalstrike/user-site-export\\data-1.csv',
 'data/vitalstrike/user-site-export\\data-2.csv',
 'data/vitalstrike/user-site-export\\data-3.csv']

Tags: 文件csv数据代码import列表datasite
1条回答
网友
1楼 · 发布于 2024-06-28 20:51:13

您可以使用os.path.join来创建glob参数,以确保搜索模式使用了正确的操作系统分隔符(取决于正在运行的操作系统):

import os
import glob

dirs = ['data', 'vitalstrike', 'user-site-export', 'data-*']
data_list = glob.glob(os.path.join(*dirs))

dirs的输出:

data/vitalstrike/user-site-export/data-*  # Mac/*nix
data\vitalstrike\user-site-export\data-*  # Windows

相关问题 更多 >