python 模块os的基础练习

目录

题目:获取到了当前目录的内容,去打印就可以

需要用到的内容

解决代码


题目:获取到了当前目录的内容,去打印就可以

"""
# 打印一个目录下所有内容
# 首要解决内容
# 判定:如果是目录,打印完成之后,需要进入目录接着去打印。
#       如果是文件,则直接打印
# 1如何去判定是文件还是目录
# 2如何进入一个目录
# 3解决路径问题
# 在os模型中有
"""

需要用到的内容

# os.listdir(文件路径(path))     列出当前目录里的内容
#     注:“\t”为制表符,而“\”为转义符,则可以用“\”来转义“\t”,如“\\t”。
# os.path.isfile(文件路径(path))        判断是否为文件
# os.path.isdir(文件路径(path))         判断是否为目录
# os.chdir()    change directory         改变目录(进入其他工作目录)
# os.getcwd()                            获取当前的工作目录
# os.path.join()                          拼接路径

import os

print(os.listdir("D:\\text"))   # 内容有['text.txt', 'text2']
print(os.path.isfile("D:\\text"))  # 是否为文件False
print(os.path.isdir("D:\\text"))   # 是否为目录True
print(os.getcwd())  # 此文件路径D:\python_code\homework\modle_homework
print(os.path.join("D:\\text", "text2"))  # 拼接结果D:\text\text2

解决代码

import os


def print_directory(path, level=1):
    for file_name in os.listdir(path):
        if os.path.isfile(os.path.join(path, file_name)):
            print("\t" * level + file_name)
        if os.path.isdir(os.path.join(path, file_name)):
            print("\t" * level + file_name)
            print_directory(os.path.join(path, file_name), level + 1)


print_directory("D:\\text")
# 内容呈现
'''
	text.txt
	text2
		text2.txt
		text3
			text3.txt
			text4
				text4.txt
'''

猜你喜欢

转载自blog.csdn.net/2302_77035737/article/details/130669037