python - 使用 glob 获取文件名

标签 python filenames glob

我正在使用 Pandas 读取几个 tsd 文件并将它们组合成一个大框架。我正在使用 glob 遍历我的目录和子目录中的所有文件。每一帧都有一个唯一的键。现在我想创建一个引用表,其中存储了每个键的文件名。但是由于我不太了解 glob,所以我不知道如何只获取文件的名称。

p = Path('myPath')
data = []
reference_table = {}
number_of_files = 0

for tsd_files in p.glob('**/*.tsd'):
        data.append(pd.read_csv(str(tsd_files), delim_whitespace=True, header=None))
        number_of_files = number_of_files + 1

whole_data = pd.concat(data, keys= list(range(number_of_files)))

最佳答案

只需使用 os.path.basename() 从路径中仅获取文件名。

p = Path('myPath')
data = []
reference_table = {}
number_of_files = 0
file_names = []

for tsd_files in p.glob('**/*.tsd'):
    data.append(pd.read_csv(str(tsd_files), delim_whitespace=True, header=None))
    number_of_files = number_of_files + 1
    file_names.append(os.path.basename(tsd_files))

whole_data = pd.concat(data, keys= list(range(number_of_files)))

关于python - 使用 glob 获取文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44215339/

相关文章:

python - 无法搜索 eve rest API - 附加查找不起作用

php - 是否有任何理由使用 jpg 文件扩展名?

python - 我可以对文件名使用 MD5 或 SHA1 哈希吗?

python - 循环图像,保存ID名称并将其相应地存储在数据框中

python - 如何在Python的for循环中增加1或2

python - 在多列上使用 pandas fillna()

linux - 在 Linux 中将日期 append 到文件名

php glob 获取正确的路径

zsh glob 限定符排除二进制文件

python - 在minimummodbus中写入多个从站时出错