1、使用python实现linux的tree命令功能
# method 1 ########################################
import os
def getTree(d, n=1):
if n == 1:
print(d)
for i in os.listdir(d):
print("?"*5*n+i)
if os.path.isdir(d+"\\"+i):
getTree(d+"\\"+i,n+1)
getTree(input("请输入地址:"))
# method 2 ########################################
import os
def tree(x, n=1):
if n == 1:
lst = list(x.split('\\'))
print(lst[len(lst)-1])
# 判断传入的地址是否为文件夹
if os.path.isdir(x):
for i in os.listdir(x):
# 找到文件夹的下一层地址
new_address = x + "\\" + i
print("-"*n, i)
# 如果是文件夹就进入该文件夹再次执行tree(x)函数
if os.path.isdir(new_address):
# n+5的作用:使输出产生递进效果
tree(new_address, n+5)
else:
print("输入错误,不是地址")
tree(input("请输入地址:"))
|