• 13、python的路径处理


    前言:本文主要介绍python中路径的处理,包括os模块和有关的2个魔法变量。

    一、os模块


    python里面的os模块有许多方法可以让我们通过代码实现创建,删除和更改目录,具体如下:

    • os.getcwd():显示当前的工作路径,只具体到路径,不具体到文件
    • os.path.realpath(path):返回path的真实路径,如果参数是:file,就说明是本文件所在的绝对路径,对比二者的区别?
    • os.path.join(a,b):连接两个部分的路径,组成一个完整的路径
    • os.mkdir(路径名字):在某个目录下创建一个新目录
    • os.rmdir(路径名字):删掉一个目录
    • os.listdir():获取当前路径下的目录列表,返回列表格式数啹
    • os.path.isdir():判断当前文件是否是目录,返回布尔值
    • os.path.isfile():判断当前文件是否是文件,返回布尔值
    • os.chdir(path):将当前工作目录更改为指定路径
    • os.rename(name,newname):修改文件各字

    还有更多的方法有兴趣请自行百度,以下是一些用法参考:

    import time
    import os
    import sys
    
    # sys.path是python的搜索模块的路径集,用list存放
    # 导入的包的搜索路径顺序按sys.path一个个往下找,如果在这些路径下都找不到这个包,就会报错
    
    # 可以通过append()给它增加要使用的包的路径,
    # for i in sys.path:
    #     print(i)
    
    # os模块:对操作系统进行操作的一系列动作都在os模块里
    # 获取当前工作路径,只具体到路径,不具体到文件名
    print(os.getcwd())
    
    # 获取当前文件在操作系统中的绝对路径,具体到文件名
    print(__file__)
    
    # 查看指定文件在系统中的绝对路径
    print(os.path.realpath('test'))
    print(os.path.realpath(__file__))
    
    # os.path.join  拼接路径
    path_01 = 'd:learn'
    path_02 = os.path.join(path_01, 'python')
    print(path_02)
    
    # os.mkdir() :创建目录(文件夹)
    # os.mkdir('test')
    
    # os.rmdir() :删除目录(只能删除空目录),如果目录下有文件,会报错 ,非空目录怎么删除,思考一下?
    # os.rmdir('test')
    
    # 默认返回当前路径下的所有文件和目录信息,以列表形式返回
    print(os.listdir())
    print(os.listdir('d:learn	est'))
    
    # os.path.isfile():判断当前文件是否是文件,返回布尔值  不传入路径默认搜索当前路径
    # os.path.isdir():判断当前文件是否是文件,返回布尔值
    print(os.path.isfile('task.py'))
    print(os.path.isdir('test'))
    
    # od.chdir():切换当前工作路径
    # print(os.getcwd())
    # os.chdir('d:learn')
    # print(os.getcwd())
    
    # 修改文件名
    # os.rename('test.py','test2.py')
    
    # 返回上一级的目录
    dir = __file__
    print(os.path.dirname(dir))

    二、魔法变量


    什么是魔方变量?前后双下划线,系统定义名字(这就是在python中强大的魔法方法),因为变量名__xxx__对Python 来说有特殊含义,对于普通的变量应当避免这种命名风格,下面介绍python中的2个魔法变量。

    1) __file__ : 代表当前文件的绝对路径

    2) __name__ : 如果当前文件值程序的启动文件中,它的值是__main__如果不在启动文件中,代表的就是所在的文件(模块)的模块名

    import os
    #  魔术变量的操作
    # print('当前运行文件中打印的__name__:',__name__)
    
    # 路径的处理
    print(__file__)
    
    # 自动化测试项目,用到的路径基本会使用相对路径
    # 这样不管项目放到哪个环境都能正常运行
    
    # 获取文件/目录所在的父级目录
    dir = os.path.dirname(__file__)
    print(dir)
    
    BASEDIR = os.path.dirname(dir)    
    print(BASEDIR)
    
    # 这就是test.py的相对路径,而不是d:python	est	est.py绝对路径
    file_path = os.path.join(BASEDIR, "test.py") 
    print(file_path)
  • 相关阅读:
    Swift入门篇-Hello World
    Swift入门篇-swift简介
    Minecraft 插件 world edit 的cs 命令
    搭建本地MAVEN NEXUS 服务
    MC java 远程调试 plugin 开发
    企业内部从零开始安装docker hadoop 提纲
    javascript 命令方式 测试例子
    ca des key crt scr
    JSF 抽象和实现例子 (函数和属性)
    form 上传 html 代码
  • 原文地址:https://www.cnblogs.com/miki-peng/p/12230349.html
Copyright © 2020-2023  润新知