os.getcwd() #获得你当前.py文件所在的目录,也就是你当前的.py文件所在的位置
os.listdir(path) #path为自定义的目录路径,通过该语句会返回一个字符串列表,该列表中的元素为目录路径path下的文件的名字或者是目录路径path下的目录的名字,因为该路径下可能嵌套的又是另外一个目录。
os.path.join(path1, path2) #用于连接两个路径,连接之后的路径相当于path1/path2。
os.path.abspath(filenmae) #filename是一个文件的名字,这个语句用于获取文件filename的绝对路径,绝对路径就是有头有尾,这个路径是唯一的。
os.path.isdir(path),os.path.isfile(path),os.path.exists(path) #path是一个路径,可以对应一个具体的文件,也可以对应一个目录,这三个语句的意思分别是判断当前path是不是一个目录,判断当前path是不是一个文件,判断当前path是否存在。
os.chdir(path) 用于将当前工作目录切换到指定的路径path。要切换的新路径path必须是真实存在的。
文件名是带后缀的,目录是不带后缀的,注意区分。
案例1:
import os
# 先用os.getcwd 获得我当前文件所处的路径
print('os.getcwd()==', os.getcwd())
# os.getcwd()== D:\python项目代码\test_20210306\shudu_20220920 这是打印输出
# 再用os.listdir 获得当前文件所在目录下的所有文件,也就是同级别的所有文件,以字符串列表的形
# 注意,我当前文件所在目录下不止一个文件,还有其他的文件。
print('os.listdir(path=path1)==', os.listdir(path=os.getcwd()))
# os.listdir(path=path1)== ['python_study_practice.py', 'sudo.py', 'sudoku.txt', 'test_sudo.py', 'xxx.xlsx', '__init__.py', '__pycache__'] 这是打印输出
# os.path.join用于将两个路径进行相加,并且在两个字符串之间加上‘/’
path1 = 'D:\\ABC'
path2 = os.path.join(path1, os.listdir(os.getcwd())[1])
print('os.path.join==', path2)
# os.path.join== D:\ABC\sudo.py 这是打印输出,注意这只是拼接一个新路径,并不会真的创建一个新文件
# os.path.abspath获取文件的绝对路径,包括文件名
path3 = os.path.abspath('pyhton_study_practice.py')
print('os.path.abspath==', path3)
# os.path.abspath== D:\python项目代码\test_20210306\shudu_20220920\pyhton_study_practice.py
print(os.path.exists('test04_knobsselect.py'))
# 这里打印出来的为:False 因为test04_knobsselect.py这个文件不存在。
案例2:
import os
# 1、获得当前所在的文件目录路径
path_str = os.getcwd()
# 打印出当前文件目录路径下所有的文件名或目录名
path_list = os.listdir(path_str)
# 在当前目录下新建一个目录,名字为 'this_test00'
new_file_path = 'this_test00'
# 定义关键字段,即要查找出的是所有带有关键字段的文件的路径
sub_str = 'test'
# 查看新建的目录名是否已经在当前目录下的列表中存在
# 如果不存在,则在当前目录下新建一个目录
if new_file_path not in path_list:
os.mkdir(new_file_path)
# 遍历当前目录下的所有文件名和目录名
for i in path_list:
# 如果是一个目录名,则删除该目录
if os.path.isdir(i):
os.rmdir(i)
# 如果是一个文件名,则查看文件名中是否包含关键字段,这里用到find方法,如果不包含则返回值为-1,不等于-1则是包含关键字段
if i.find(sub_str) != -1:
# 将当前文件所在的目录和包含关键字的文件名进行连接并进行打印。
path = os.path.join(path_str, i)
print(path)
案例2的内容,重点学习几个方法的使用规则。
案例3:
import os
# 查看当前工作目录
retval = os.getcwd()
print("当前工作目录为 %s" % retval)
# 当前工作目录为 D:\pycharm\time\test 这是输出
# 修改当前工作目录
path = 'D:\\pycharm\\time' #注意要两个斜杠
os.chdir( path )
# 查看修改后的工作目录
retval = os.getcwd()
print("目录修改成功 %s" % retval)
# 目录修改成功 D:\pycharm\time 这是输出