python获取绝对路径_python-获取目录中所有文件的绝对路径

python-获取目录中所有文件的绝对路径

如何获取目录中所有文件的绝对路径,这些目录在Python中可能具有许多子文件夹?

我知道os.walk()递归地为我提供了目录和文件列表,但这似乎并不能为我提供所需的信息。

8个解决方案

53 votes

os.path.abspath确保路径是绝对的。 使用以下帮助器功能:

import os

def absoluteFilePaths(directory):

for dirpath,_,filenames in os.walk(directory):

for f in filenames:

yield os.path.abspath(os.path.join(dirpath, f))

phihag answered 2020-02-21T12:25:41Z

15 votes

如果给os.walk提供的参数是绝对的,则在迭代过程中产生的根目录名称也将是绝对的。 因此,您只需要使用文件名将它们加入:

import os

for root, dirs, files in os.walk(os.path.abspath("../path/to/dir/")):

for file in files:

print(os.path.join(root, file))

wim answered 2020-02-21T12:26:02Z

9 votes

尝试:

import os

for root, dirs, files in os.walk('.'):

for file in files:

p=os.path.join(root,file)

print p

print

你可能感兴趣的:(python获取绝对路径)