import os
import sys
rootdir = sys.argv[1]
print os.path.abspath(rootdir)
with open('output.txt','r') as fout:
for root, subFolders, files in os.walk(rootdir):
for file in files:
path = os.path.abspath(file)
print path
print os.path.getsize(path)
答案 0 :(得分:0)
os.walk
返回一个列表,目录树遍历中的每个目录都有一个条目。每个列表元素包含三个元素,第一个是目录名,第二个是子目录的名称,第三个是该目录中文件的名称。这些名称只是文件名,而不是完整路径或相对路径。因此,通过调用os.path.abspath
,您将文件名连接到工作目录,而不是在遍历期间找到该文件的实际目录。将文件名与其中找到的目录连接起来:
import os
import sys
rootdir = sys.argv[1]
print os.path.abspath(rootdir)
with open('output.txt','r') as fout:
for root, subFolders, files in os.walk(rootdir):
for file in files:
path = os.path.join(root, file)
print path
print os.path.getsize(path)