【发布时间】:2019-12-29 16:01:11
【问题描述】:
我正在使用 glob API 将我的所有 CSV 加载到一个列表中。执行我的代码后,我意识到 data_list 中的结果在文件路径中追加 \ 而不是 / 在 csv 数据文件名之前。
我的python代码文件在这个位置:C:\Documents\python-workspace\analysis.py
我的 4 个 csv 数据在这个位置:
C:\Documents\python-workspace\data\vitalstrike\user-site-export\data-1.csv
C:\Documents\python-workspace\data\vitalstrike\user-site-export\data-2.csv
C:\Documents\python-workspace\data\vitalstrike\user-site-export\data-3.csv
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)
执行代码后,我发现 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']
【问题讨论】:
-
这似乎有点像苹果和橘子的问题。为什么要使用
/而不是本地操作系统路径分隔符? -
不要混合操作系统分隔符,在 Windows 上是 `\\`,所以在 glob(...) 中也可以使用它们。
-
我想你可以通过简单地在任何 POSIX 兼容(或大部分兼容)系统上运行它来强制它。
-
感谢 cmets。我正在使用 spyder IDE。当我在控制台上显示 data_list 中的值时,它会显示 data/vitalstrike/user-site-export\\data-1.csv。当我直接查看列表中的值时,它是一个 '\'
-
其实我想将找到的 csv 文件名追加到文件路径为 /data-1.csv 而不是 \data-1.csv。