zoukankan      html  css  js  c++  java
  • Python--os的常见方法

    1、os.getcwd()+'/filename'------>相当于在当前运行文件的目录下创建一个以filename命名的文件

    2、os.path.realpath(__file__)------>获取当前文件路径(C:UsersadminPycharmProjects est_case est_unitest.py)---->__file__表示的是当前文件---->这个精确到.py文件

    3、os.path.dirname(__file__)------>获取当前文件的上级目录(C:UsersadminPycharmProjects est_case)----->到.py文件的上一级文件夹

    4、

    1 import os;
    2 print(os.path.realpath(__file__));
    3、os.rename('要修改名字的文件地址','名称修改后');
    问题:我将当前py文件修改名称后,py文件变为text类型了


    4、获取地址路径名和获取指定文件名
     1 #path.basename:某地址下,只获取文件名称
     2 aa=os.path.basename(os.path.realpath(__file__));
     3 bb=os.path.basename(r'D:Users4399-3046Desktop	est.txt');
     4 print(aa);#---->test_index_2.py
     5 print(bb);#----->test.txt
     6 
     7 #path.dirname:只获取地址路径,不获取文件
     8 cc=os.path.dirname(os.path.realpath(__file__))
     9 dd=os.path.dirname(r'D:Users4399-3046Desktop	est.txt');
    10 print(cc);#---->C:Users4399-3046PycharmProjects	est_case
    11 print(dd);#----->D:Users4399-3046Desktop

    3、os的其他常用用法

    os.path.exists():判断文件或目录是否存在
    if(os.path.exists(os.path.dirname(__file__))):
        print('存在');
    else:
        print('不存在');
    
    
    

    os.path.isfile():判断是否是文件 os.path.isdir():判断是否是目录 os.path.dirname():获取当前文件所在的目录,即父目录 os.makedirs():创建多级目录 os.mkdir():创建单级目录 os.path.getsize():获取文件大小

    4、因为找到path,可能还需要判断是否为文件还是文件夹,有可能还需要对文件进行读写

    此处,对于文件的相关操作,可以使用python3的一个内建模块:pip install pathlib,会更简单

    使用方法可参考:https://www.cnblogs.com/sigai/p/8074329.html

    基本用法:
    Path.iterdir()  #遍历目录的子目录或者文件
    Path.is_dir()  #判断是否是目录
    Path.glob()  #过滤目录(返回生成器)
    Path.resolve()  #返回绝对路径
    /  # 拼接路径(目录中进行导航-官网说法)
    Path.exists()  #判断路径是否存在
    Path.open()  #打开文件(支持with)
    Path.unlink()  #删除文件或目录(目录非空触发异常)
    基本属性:
    Path.parts  #分割路径 类似os.path.split(), 不过返回元组
    Path.drive  #返回驱动器名称
    Path.root  #返回路径的根目录
    Path.anchor  #自动判断返回drive或root
    Path.parents  #返回所有上级目录的列表
     
    改变路径:
    Path.with_name()  #更改路径名称, 更改最后一级路径名
    Path.with_suffix()  #更改路径后缀
    /  #拼接路径
    Path.joinpath()  #拼接路径
    Path.relative_to()  #计算相对路径
     
    测试路径:
    Path.match()  #测试路径是否符合pattern
    Path.is_dir()  #是否是文件
    Path.is_absolute()  #是否是绝对路径
    Path.is_reserved()  #是否是预留路径
    Path.exists()  #判断路径是否真实存在
     
    其他方法:
    Path.cwd()  #返回当前目录的路径对象
    Path.home()  #返回当前用户的home路径对象
    Path.stat()  #返回路径信息, 同os.stat()
    Path.chmod()  #更改路径权限, 类似os.chmod()
    Path.expanduser()  #展开~返回完整路径对象
    Path.mkdir()  #创建目录
    Path.rename()  #重命名路径
    Path.rglob()  #递归遍历所有子目录的文件
  • 相关阅读:
    474. Ones and Zeroes
    [LeetCode]464. Can I Win
    413. Arithmetic Slices
    numpy学习(布尔型索引)
    numpy学习(数组和标量之间的运算切片)
    numpy学习(数组的定义及基础属性)
    关于静态显示游标的遍历
    关于oracle的数组
    shutil模块
    开源库(不定义更新)
  • 原文地址:https://www.cnblogs.com/shenyexiaoqingxin/p/10430497.html
Copyright © 2011-2022 走看看