Python-列出文件夹中的文件-带有变量的路径名

2024-09-25 02:27:44 发布

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

我对这个很陌生。我正在使用python,我想在许多不同的文件夹中列出文件(使用windows)

在我的第一步,我有很多路径变量。每条路径都有自己的变量。它起作用了,但这似乎是一种冗长的工作方式。由于除了文件夹名之外,路径都是相同的,所以我尝试了以下操作:

import os

folder = ["folderA", "folderB", "folderC", "folderD"]
path1 = input('//server/files/"%s"/data' % (folder))

def list_sp_files():
    for filename in os.listdir(path1):
        print path1, filename

print "reporter"
list_sp_files()

我明白为什么它不起作用,但我不明白我是怎么做到的。


Tags: 文件路径文件夹oswindows方式filesfolder
2条回答

也许是这样的?

folders = ["folderA", "folderB", "folderC", "folderD"]
def list_sp_files():
    for folder in folders:
        path = '//server/files/%s/data' % (folder)
        for filename in os.listdir(path):
            print path, filename

尝试将path1更改为如下内容:

path1 = ["//server/files/%s/data" % f for f in folder]

list_sp_files()改成:

def list_sp_files(path_list):
    for path in path_list:
        for filename in os.listdir(path):
            print path, filename

然后通过

list_sp_files(path1)

基本上,这个答案使path1变量成为带有生成器表达式的字符串列表-它通过遍历folder列表并为其中的每个项运行"//server/files/%s/data" % f来创建一个列表。

更改后的list_sp_files()只需遍历给定给它的路径列表,并打印来自os.listdir()的所有内容。

相关问题 更多 >