zoukankan      html  css  js  c++  java
  • python自动化办公1-os模块学习

    python自动化办公

    python自动化办公中必掌握的模块---os模块,os模块是python内置库,可以直接与操作系统进行对接

    1、os模块调用可执行文件

    python调用shell脚本或者调用系统命令,有两种方法,一是os.system(cmd),二是os.popen(cmd)

    import os
    
    os.system('regedit.exe')    # 可以调用系统的一些命令,regedit是注册表的命令,打开注册表,类似win+r,输入regedit.exe
    os.system('services.msc')   # 打开服务管理里, 类似win+r,输入services.msc
    os.system('cmd.exe')     # 直接在pycharm中打开cmd
    os.system('ping www.baidu.com')   # 调用ping命令

    直接调用可执行文件,比如调用qq(属性+可执行文件的地址)

    # 直接调用可执行文件
    os.startfile("C:Program Files (x86)TencentQQBinQQScLauncher.exe")

    2、os模块操作文件和目录

    os模块的几个属性

    print(os.name)    # 返回操作系统的相关信息,window返回nt,Linux返回不同
    print(os.sep)     # 返回文件路径分隔符,操作系统不一样,返回内容不一样,wind的分割符是,Linux是/
    print(os.linesep)
    print(repr(os.linesep))   # '
    ', 返回当前平台使用的行终止符,win是‘
    ’, linux是
    ,mac是
    

    os模块操作文件与目录

    print(os.getcwd())
    
    改变工作目录
    os.chdir('D:zgzengpychon爬虫')
    print(os.getcwd())   # D:zgzengpychon爬虫
    os.chdir('D:zgzengpychon基础python自动化')
    print(os.getcwd())    # D:zgzengpychon基础python自动化
    
    # 创建目录
    os.mkdir('D:zgzeng2')   # 在指定的路径下创建目录
    os.makedirs('D:zgzeng2zgzeng3zgzeng4')  # 在指定的路径下创建多级目录
    
    # 删除目录
    os.rmdir('D:zgzeng2zgzeng3zgzeng4')
    os.removedirs('Dzgzeng2zgzeng3zgzeng4')

    # 重命名
    os.rename('directory_name', 'new_name')

    # 返回指定目录下的文件与文件夹
    print(os.listdir(r'D:zgzengpychon基础python自动化')) # ['1-os模块调用可执行文件.py', '2-os模块操作文件和目录.py']

    3.os.path模块操作

    # 判断路径是否为绝对路径
    print(os.path.isabs(r"D:zgzengpychon基础python自动化a.txt"))   # True
    
    # 判断路径是否为目录
    print(os.path.isdir(r"D:zgzengpychon基础python自动化a.txt"))   # False
    
    # 判断路径是否为文件
    print(os.path.isfile(r"D:zgzengpychon基础python自动化a.txt"))   # True
    
    # 判断文件是否存在
    print(os.path.exists(r"D:zgzengpychon基础python自动化a.txt"))   # True
    
    
    
    
    # 返回当前文件的大小,如果文件不存在就会报错
    print(os.path.getsize('a.txt'))   # 17  返回字节数量
    
    # 返回当前文件的绝对路径
    print(os.path.abspath('a.txt'))    # D:zgzengpychon基础python自动化a.txt
    
    # 返回返回文件的路径
    print(os.path.dirname(r'D:zgzengpychon基础python自动化a.txt)'))   # D:zgzengpychon基础python自动化
    
    # 返回当前时间
    print(os.path.getctime('a.txt'))    # 1599468546.5112321  时间戳
    
    # 返回文件的最近一次访问时间
    print(os.path.getatime('a.txt'))   # 1599468639.3794036 返回时间戳
    
    # 返回文件的最近修改时间
    print(os.path.getmtime('a.txt'))   # 1599468639.3794036 返回时间戳
    path = os.path.abspath('a.txt')
    # 返回一个元组,将目录与文件分开
    print(os.path.split(path))    # ('D:\zgzeng\pychon基础\python自动化', 'a.txt') 以\分割
    print(os.path.splitext(path))  # ('D:\zgzeng\pychon基础\python自动化\a', '.txt')  拿到后缀

    print(os.path.join('a', 'b', 'c'))  # 把文件和目录合成一个路径    ac

    4、walk进行遍历

    import os
    
    path = os.getcwd()
    
    # 遍历当当前路径
    tuple_files = os.walk(path)
    print(tuple_files)       # <generator object walk at 0x010154F8> 拿到的是一个生成器对象
    
    # dirpath  指定目录路径
    # dirnames  目录下所有的文件夹
    # filenames  目录下所有文件
    
    for dirpath, dirnames, filenames in tuple_files:
        for dir in dirnames:
            print(dir)
            print(os.path.join(dirpath, dir))
    #         pass
        for file in filenames:
            print(file)
            print(os.path.join(dirpath, file))
    #         pass
  • 相关阅读:
    CentOS7下Tomcat启动慢的原因及解决方案
    在SpringBoot中使用RabbitMQ
    SpringBoot 中使用Redis分布式锁
    微信小程序个人入门开发
    CentOS 通过 expect 批量远程执行脚本和命令
    (七)Spring Cloud 配置中心config
    (六)Spring Cloud 网关Zuul
    (五)Spring Cloud 熔断器 hystrix
    用Sql Server自动生产html格式的数据字典
    TCP介绍
  • 原文地址:https://www.cnblogs.com/zgzeng/p/13629221.html
Copyright © 2011-2022 走看看