1、得到某一文件夹下的文件名
os.walk()用法:dirpath:根路径,dirname:根路径下的文件夹名称,filenames:非路径下文件夹名称的文件名称,<class 'str'> <class 'list'> <class 'list'> ,逐级列出,从少到多。
#文件结构
import os
root = r'D:\demo\hdle' #自己的文件夹dome
for dirpath,dirname,filenames in os.walk(root):
if dirpath == "D:\demo\hdle\check\ycw\hdhd":
print(filenames)
# print(dirpath,dirname)
print(type(dirpath),type(dirname),type(filenames))
2、列出所有文件路径,包含文件名在内
# 得到文件的路径
import os
root = r'D:\demo\hdle'
for dirpath,dirname,filenames in os.walk(root):
for filepath in filenames:
print(os.path.join(dirpath,filepath))
print(type(dirpath),type(dirname),type(filenames))
3、树状图展示文件结构
# 树状图结构展示
import os
#root = root = r'D:\demo\hdle
#递归实现
# def get_file_list(path):
# file_list = [] #存储文件名
# for filename in os.listdir(path):
# file_path = os.path.join(path, filename)
# if os.path.isdir(file_path):
# file_list.extend(get_file_list(file_path))
# else:
# file_list.append(file_path)
# return file_list
# file_list =get_file_list(root)
# for i in range(len(file_list)):
# print(file_list[i])
def print_tree(path, level=0):
if not os.path.isdir(path): #判断是不是文件夹路径
return
filenames = os.listdir(path) #列出当前文件夹下的文件夹和文件名称
for filename in filenames:
file_path = os.path.join(path, filename) #得到总路径名称
if os.path.isdir(file_path): #os.isdir()判断是路径(文件夹)
#区分这个os.path.isfile(),判断是文件
print(('| ' * level) + '|-- ' + filename)
print_tree(file_path, level + 1)
else:
print(('| ' * level) + '|-- ' + filename)
print_tree(root)
本文介绍了如何使用Python的os模块实现获取文件夹下的文件名,生成文件路径列表,并以树状图形式展示文件结构。通过`os.walk()`函数逐层遍历文件夹,`os.listdir()`和`os.path.join()`用于处理文件和目录的操作。
2066

被折叠的 条评论
为什么被折叠?



