我想创建一个名单并将所有名称存储在四个文件夹中。我建立
namelist = {1:[], 2:[], 3:[], 4:[]}
在方法中,我写了
for file_name in sorted(os.listdir(full_subdir_name)):
full_file_name = os.path.join(full_subdir_name,file_name)
#namelist[level] += blabla...
我想将第一个文件夹中的名称添加到namelist [1]中,从第二个文件夹添加到namelist [2]。我不知道如何将不同级别的所有名称添加到其中。 THX!
答案 0 :(得分:0)
我不完全确定这是你在上面的问题所得到的。但似乎首先,您希望使用enumerate()
来保留四个文件夹的索引和名称。但是,我认为你实际上需要一个额外的for循环,根据你上面的评论,实际附加每个子文件夹中每个文件的所有内容。以下应该可以解决问题。
另请注意,您的词典键以1
开头,因此您需要考虑枚举索引以0开头的事实。
# Here, enumerate gives back the index and element.
for i,file_name in enumerate(sorted(os.listdir(full_subdir_name))):
full_file_name = os.path.join(full_subdir_name,file_name)
# Here, 'elem' will be the strings naming the actual
# files inside of the folders.
for elem in sorted(os.listdir(full_file_name)):
# Here I am assuming you don't want to append the full path,
# but you can easily change what to append by adding the
# whole current file path: os.path.join(full_file_name, elem)
namelist[i+1].append(elem)