我的代码扫描“Monitors”文件夹下的目录和子目录,但不知何故我无法打印子目录名称。如何使用python打印子目录名称
监视器是父目录,Dell是子目录,io是Dell下的文件。
-Monitors
-------- Cab.txt
--- Dell
-------- io.txt
-------- io2.txt
我的父目录和代码
parent_dir = 'E:\Logs\Monitors'
def files(parent_dir):
for file in os.listdir(parent_dir):
if os.path.isfile(os.path.join(parent_dir, file)):
yield file
def created(file_path):
if os.path.isfile(file_path):
file_created = time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(os.path.getctime(file_path)))
return file_created
len = (item for item in files(parent_dir))
str = ""
for item in len:
str +="File Name: " + os.path.join('E:\\Logs\\Monitors\\', item) + "\n" \
+ "File Created on: " + created(os.path.join('E:\\Logs\\Monitors\\', item)) + "\n" \
print str;
输出
E:Logs\Monitors\Cab.txt
E:Logs\Monitors\io.txt
E:Logs\Monitors\io2.txt
我所需的输出
E:Logs\Monitors\Cab.txt
E:Logs\Monitors\Dell\io.txt
E:Logs\Monitors\Dell\io2.txt
我试着用在path.join变量,但有错误结束。
你不能真正得到的是输出,除非'io.txt'和'io2.txt'住在'E:\日志\ Monitors'直接。你永远不会从'Dell'生成文件。 –
@MartijnPieters那么还有什么其他的方式来列出目录中的所有文件及其子目录中的路径名? – Prime