zoukankan      html  css  js  c++  java
  • python学习(十八)OS模块方法

    import OS
    print(os.getcwd()) #取当前工作目录

    os.chmod('/usr/local',7) #Linux中给文件/目录加权限
    print(os.chdir("../day5")) #更改当前目录,相对路径
    print(os.chdir("F:pycharm_workspacecodebyemilyday5")) #更改当前目录,绝对路径
    print(os.getcwd())
    print(os.makedirs('liujia/test'))#递归创建文件夹,父目录不存在时创建父目录
    print(os.mkdir('liujia1/test1'))#创建文件夹,没有父目录会报错
    print(os.removedirs('liujia/test'))#递归删除空目录
    print(os.rmdir('test1')) #删除指定的文件夹,也只能删除空目录
    print(os.remove('liujia/test/11')) #只能删除文件
    print(os.rmdir('test')) #只能删除文件夹
    print(os.listdir('G:\')) #列出一个目录下的所有文件
    print(os.rename('test','test1')) #重命名
    print(os.stat('test.txt'))#获取文件信息
    print(os.sep) #当前操作系统的路径分隔符 ,windows下的就是
    #用这种方式写的话,可以同时在不同系统用,不会报错
    print(os.linesep) #当前操作系统的换行符 ,
    print(os.pathsep) #当前系统环境变量的分隔符,linux是: windows是;
    print(os.environ)#当前系统的环境变量
    print(os.name) #当前系统的名称,windows系统是nt linux系统是posix
    os.system('ipconfig') #执行操作系统命令的 ,
    res=os.popen('ipconfig').read()#可以获取到命令执行的结果
    print(res)

    print(os.path.abspath(__file__)) #获取当绝对路径
    print(__file__) #获取当前文件的绝对路径
    print(os.path.dirname("G:360DownloadsSoftware")) #获取父目录,获取它的上一级目录
    print(os.path.basename('G:360Downloadswpcache360wallpaper.jpg')) #获取最后一级
    print(os.path.exists('')) #目录是否存在
    print(os.path.isabs('../day5')) #判断是否是绝对路径
    print(os.path.isfile('ceshi.py')) #判断是否存在,且是不是一个文件
    print(os.path.isdir('')) #是否是一个路径,目录是否存在
    size=os.path.getsize('') #获取文件的大小
    print(size)
    print(os.path.join('root','hehe','mysql','a.sql')) #拼接一个路径
    
    
    for abs_path,dir,file in os.walk('../day6'):
        print(abs_path,dir,file)
    #abs_path当前循环的绝对路径
    #dir目录下面所有的文件夹
    #file目录下面所有的文件
    小练习
    在day6文件夹下有一个logs文件夹,格式如图所示
     

     在双数日期的日志里面随便写点东西

    分析:

    1)获取到logs目录下面的所有文件 os.walk()

    2)根据文件名判断是不是双数日期 ,分割字符串,取到日期

    3)12%2==0

    4)打开这个文件 open()

    import os
    for abs_path,dir,file in os.walk('F:/pycharm_workspace/codebyemily/day6/logs'):
        #print(abs_path,file)
        for i in file:  #循环列表,取每个元素
            day=i.split('.')[0].split('-')[-1]#对每个文件名进行分割,先按照.分割,然后按照-分割,分割后,取最后一个元素就是天
            if int(day)%2==0: #取双数天
                filename=os.path.join(abs_path,i)#拼接绝对路径
                #print(filename)
                open(filename,'a+',encoding='utf-8').write('测试')

    执行后,查看log文件,双数日期的都写入了‘测试’。

  • 相关阅读:
    Scala入门基础1
    LitePal数据库的基本操作
    Android操作SQLate数据库
    Android广播的使用(自定义广播和本地广播)
    Android广播的使用(动态注册和静态注册)
    Android碎片的使用
    linux--硬链接与软连接
    linux下python环境的搭建
    系统时间的修改
    linux命令--文件和目录管理
  • 原文地址:https://www.cnblogs.com/emilyliu/p/8982700.html
Copyright © 2011-2022 走看看