gpt4 book ai didi

python - 将多个文件夹的名称存储在变量列表中

转载 作者:行者123 更新时间:2023-12-05 09:33:52 25 4
gpt4 key购买 nike

我有 47 个文件夹(100、00、01、02、...、43、44、45)。我想将这些文件夹的名称存储在一个列表中,以便我可以用它构建一个 pandas Dataframe。到目前为止,我有这段代码:

import os
import glob
path = '/content/drive/MyDrive/data/classes/'
ListOfClasses = []
for file in glob.glob (path + '/*'):
ListOfClasses.append(file)
ListOfClasses

但是,文件夹的名称是这样的(它们也是杂乱无章的):

['/content/drive/MyDrive/data/classes/42',
'/content/drive/MyDrive/data/classes/43',
'/content/drive/MyDrive/data/classes/36',
'/content/drive/MyDrive/data/classes/45',
...,
'/content/drive/MyDrive/data/classes/00',
'/content/drive/MyDrive/data/classes/02',
'/content/drive/MyDrive/data/classes/04']

我怎样才能把以前的方式变成这样:

['00',
'01',
'02',
'03',
...,
'44',
'45',
'100']

最佳答案

我不使用 glob 模块,而是使用 pathlib 模块。 pathlib.Path.glob 生成 pathlib.Path 对象的集合,而不是字符串。由于它们是路径对象,您可以只选择每个路径的 stem 来剔除前面的所有内容。然后,您可以对词干字符串进行排序,就好像它们是整数一样:

from pathlib import Path

path = "/content/drive/MyDrive/data/classes/"

list_of_classes = sorted([p.stem for p in Path(path).glob("*")], key=int)

关于python - 将多个文件夹的名称存储在变量列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66994271/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com