Python中OS对目录的操作以及引用

路径的获取

对当前目录的获取

1 path = os.getcwd()
2 print("获取到的当前目录是:({})".format(path))

获取当前文件所在的绝对路径

import os

path = os.path.realpath(__file__)
print("获取到的当前路径是:({})".format(path))

路径的拼接,生成新的路径

(以下两种都可以) 方法一

import os
path = os.getcwd()+"/abc"
print("获取到的当前目录是:({})".format(path))

os.mkdir(path) #创建1个新目录

方法二

 1 import os 
 2 
 3 new_path = os.path.join(os.getcwd(),"abc")
 4 print(new_path)
 5 os.mkdir(new_path)
 6 
 7 # 使用join拼接目录新建时,需要确保最后一级之前的目录都存在
 8 new_path = os.path.join(os.getcwd(),"abc","def")
 9 print(new_path)
10 os.mkdir(new_path)
11 
12 
13 # 上述可以写成如下方法
14 new_path = os.path.join(os.getcwd(),"abc\def")
15 print(new_path)
16 os.mkdir(new_path)

判断是文件还是目录

"""
isfile() 判断的是文件
isdir()  判断的是目录

"""

print (os.path.isfile(__file__))   返回值为布尔值 true
print (os.path.isfile(os.getcwd()))   返回值为布尔值 false
print (os.path.isdir(os.getcwd()))   返回值为布尔值 Ture

# exists()判断文件是否存在
print(os.path.exists(os.path.realpath(__file__)))   返回值为布尔值 Ture

 

列出当前路径下所有的目录和文件

print(os.listdir(os.getcwd()))

学习后的小练习

给定一个路径,请打印出所有的路径(直到这个路径下没有目录为止)

思路:递归函数

"""
大致思路和代码如下
"""

import os

for  path in os.listdir(os.getcwd()):
    if os.path.isdir(path):
        os.listdir(os.path.join(os.getcwd(), path))
        print("({})还需要进一步处理".format(path))
    else:
        print("已经最后一级",os.path.join(os.getcwd(), path))

 

Tags: