• python全栈开发基础【补充】复习os模块常用的一些操作


    import os
    # 1.切换路径=============
    d = os.getcwd()  #获取当前的工作路径
    os.chdir('D:\')#目录的切换
    print(os.getcwd())
    # (切换过去怎么回来呢?再chdir一下就回来了)
    os.chdir(d)
    print(os.getcwd())
    
    # 2.执行系统命令=============
    # system和popen都是执行系统命令的,但是popen比较好用,因为它有返回值
    os.system('dir') #显示的是gbk的编码,
    # 解决system乱码的方法
    ret = os.popen('dir')  #popen是有返回值的,而且自己转码了
    print(ret.read())
    
    # 3.创建文件夹=和创建文件==========
    os.mkdir('temp')  #生成一个文件夹,,只能生成一个
    os.mkdir(r'temp2inner')  #这样就报错了
    os.makedirs(r'temp1inner',exist_ok=True)  #创建多级目录
    os.makedirs(r'temp1innerinner2',exist_ok=True)  #创建多级目录
    # 那么如果文件夹已经存在了,就报错了,那我如果不想
    # 让报错(就是假如存在,就不创建也不报错),那么就加上exist_ok=True
    
    # 创建文件
    f = open(r'temp1innerfile','w')
    f.close()
    
    # 4.======重命名文件夹=====
    os.rename(r'temp1innerinner2','temp1innerhaiyan')
    
    # 5.=====删除文件夹和删除文件=========
    # 先删文件,
    os.remove(r'temp1innerfile')
    # 再删文件夹
    os.removedirs(r'temp1innerhaiyan') #删除一个文件夹的时候,如果上一级的文件夹是空的,就一并删除了。以此类推
    os.rmdir((r'temp1inner') )#只删除一个文件夹
    
    # 6.子目录========
    print(os.listdir(os.getcwd())) #打印当前目录下的目录
    print(os.walk(os.getcwd())) #<generator object walk at 0x00000000021C6728>
    ret = os.walk(os.getcwd()) #拿到的东西比较多,如果你关心子目录下的东西,就用walk
    print(list(ret))
    
    
    # 7.====获取文件或者目录的信息的结构说明========
    print(os.stat('temp'))
    # st_atime:上次访问的时间
    # st_mtime:最后一次修改的时间
    # st_ctime:最新的更新时间
    print(os.sep) # 打印的是
    print(os.getcwd())
    file_path = '%s%s%s'%(os.getcwd(),os.sep,'filename')  #拼接一个路径(方式一)
    print(file_path)
    print(os.path.join(os.getcwd(),'filename'))#拼接一个路径(方式二)
    
    # 8.====字符串指示当前使用平台
    print(os.name) #如果是win,则打印的是nt  如果是,linux,打印poxis
    # 应用场景:当你输入命令的时候,要判断是win系统还是 linux系统。就可以用
    # os.name去判断了
    
    # 9.===获取系统环境变量=====
    print(os.environ)
    
    # 10.路径相关的=======
    print(os.path.abspath('namedtuple.py'))
    print(os.path.dirname(os.path.abspath('namedtuple.py')))
    print(os.path.dirname(os.path.dirname(os.path.abspath('namedtuple.py'))))
    print(os.path.exists(os.path.abspath('namedtuple.py')))
    

      

  • 相关阅读:
    IntelliLock
    XAF How to show custom forms and controls in XAF (Example)
    [转] How to Show Usual Winform as View in XAF
    Strong name signature not valid for this assembly Microsoft.mshtml.dll
    各廠商ERP系統架構圖連結 (ERP流程圖)(轉)
    [原] XAF How can I change XafDisplayNameAttribute dynamically
    [原] XAF How to implement a custom attribute to customize the Application Model
    [转] XAF 存储多币种代码列表的三种方法
    [原] XAF 如何将数据库中Byte array图片显示出来
    [原] XAF 如何基于业务规则禁用属性
  • 原文地址:https://www.cnblogs.com/xiaohema/p/8453570.html
Copyright © 2020-2023  润新知