这篇文章主要介绍了Python 自动化常用操作,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
目录
1. OS模块
2. shutil模块
3. globa模块
glob的几种用法
本文摘自微信公众号 gitpython:十个 Python 自动化常用操作。如有侵权,联系必删。
1. OS模块
导入:import os
1. 遍历文件夹
批量操作的前提就是对文件夹进行遍历,os.walk遍历文件夹后产生三个参数:
当前文件夹路径
代码如下(按需求更改目标路径即可):
for dirpath, dirnames, filenames in os.walk(r'C:\Program Files (x86)'): print(f'打开文件夹{dirpath}') # 当前文件夹路径 if dirnames: print(dirnames) # 包含文件夹名称(列表形式) if filenames: print(filenames) # 包含文件名称(列表形式) print('-' * 10) # 输出结果: 打开文件夹C:\Program Files (x86) ['360', 'BirdWallpaper', 'Common Files', 'erl5.9.3.1', 'InstallShield Installation information', 'Intel', 'Internet Explorer', 'IQIYI Video', 'Java', 'Kingsoft', 'Microsoft Office', 'Microsoft.NET', 'MSBuild', 'NetSarang', 'NVIDIA Corporation', 'Reference Assemblies', 'Sangfor', 'Sinfor', 'SogouInput', 'svnfile', 'Tencent', 'UltraEdit', 'VMware', 'Windows Defender', 'Windows Mail', 'Windows Media Player', 'Windows Multimedia Platform', 'Windows NT', 'Windows Photo Viewer', 'Windows Portable Devices', 'Windows Sidebar', 'WindowsPowerShell', 'Youdao'] ['desktop.ini', '微软常用运行库合集_2019.07.20_X64.exe'] ---------- 打开文件夹C:\Program Files (x86)360 ['360bizhi', '360Safe', '360SD']
2. 目标路径是否是文件
给定一个目标路径path,通过一行代码判断该路径是文件夹还是文件夹路径,使用os.path.isfile(path),返回True或False。
path = r'C:UsersAdministratorDesktopdocnote.md' print(os.path.isfile(path)) # True path = 'xxx' print(os.path.isfile(path)) # False
os模块方式:os.path.basename可以直接从绝对路径中获取最后的文件名
path = r'C:UsersAdministratorDesktopdocnote.md' print(os.path.basename(path)) print(path.split('\')[-1]) # note.md
切割字符串方式:path.split('\')[-1]
path = r'C:UsersAdministratorDesktopdocnote.md' print(path.split('\')[-1]) # note.md
4. 创建文件夹
创建文件夹的代码非常常用,因为往往生成的新文件都希望有个新的文件夹存储。
dirpath = 'xxx' os.mkdir(dirpath) # 这样会在该`py`文件同一目录下生成名为`xxx`的文件夹
但如果存在同名文件夹会报错FileExistsError: [WinError 183] 当文件已存在时,无法创建该文件。: 'xxx',为了避免报错可在创建前先判断是否存在:
dirpath = 'xxx' if not os.path.exists(dirpath): os.mkdir(dirpath)
5. 获取桌面路径
获取桌面路径非常常用,可使用os.path.join(os.path.expanduser("~"), 'Desktop')获取桌面的绝对路径
好处:把数据放到桌面上,在不同的电脑上都能调用代码对数据进行处理。
如果是在一台电脑上把桌面路径固定在字符串中,则换一台电脑就必须修改桌面路径
desktop_path = os.path.join(os.path.expanduser("~"), 'Desktop') print(desktop_path) # C:UsersAdministratorDesktop
def get_desktop_path(): return os.path.join(os.path.expanduser("~"), 'Desktop')
os.rename('xxx', 'xxx2') # 重命名文件夹 os.rename('test.txt', 'test2.txt') # 重命名文件
7. 批处理文件 - 1
除了os.walk外,在非遍历各级文件夹时,还可用os.scandir()获取指定路径的全部或符合条件的文件,使用for循环,获取循环变量的name和path:
path = '.' for file in os.scandir(path): print(file.name, file.path) # 输出结果: aaa .aaa os模块.py .os模块.py test2.txt .test2.txt xxx2 .xxx2 # 如果path是绝对路径,下边打印出来的也是绝对路径
8. 批处理文件 - 2
获取指定路径的全部或符合条件的文件第二种方法使用os.listdir()获取文件名:
path = r'F:pythonpython-basictips自动化常用操作' for file in os.listdir(path): print(file) # 输出结果: aaa os模块.py test2.txt xxx2
2. shutil模块
9. 移动文件/文件夹(并重命名) shutil常用于 移动文件/文件夹,使用shutil.move()方法:
import shutil # 把当前目录下的shutil_test.txt文件移动到当前目录的bbb文件夹下 shutil.move(r'.shutil_test.txt', r'.bbb/') # 把当前目录下的shutil_test2.txt文件移动到当前目录bbb文件夹下,并重命名为shutil_test22.txt shutil.move(r'.shutil_test2.txt', r'.bbb/shutil_test22.txt')
3. globa模块
10. 批处理文件 - 3
golb模块最重要的功能是搜索获取同一级或各子级下符合条件的文件(绝对路径),非常适合写批处理的代码。
对大量文件进行相同操作,在写完针对一份文件的操作后,只需加上几行代码就可以完成批处理全部文件的工作
上一篇:Python Selenium实现无可视化界面过程解析下一篇:python anaconda 安装 环境变量 升级 以及特殊库安装的方法 热门搜索:
常用操作
自动化操作
python自动化
常用操作类
使用大全
相关文章
Python 自动化常用操作及glob使用大全
2021-09-10阅读(7828)评论(0)推荐()这篇文章主要介绍了Python 自动化常用操作,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
十个Python自动化常用操作,即拿即用
2021-11-09阅读(3986)评论(0)推荐()这篇文章主要介绍了十个Python自动化常用操作,即拿即用,文中有非常详细的代码示例,对正在学习python的小伙伴们有很好的帮助哟,需要的朋友可以参考下
python 自动化偷懒的四个实用操作
2021-11-03阅读(2541)评论(0)推荐()这篇文章主要介绍了python 自动化偷懒的四个实用操作,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下
python 利用pyautogui快速构建自动化操作脚本
2021-10-13阅读(9012)评论(0)推荐()我们经常遇到需要进行大量重复操作的时候,比如:网页上填表,对 web 版本 OA 进行操作,自动化测试或者给新系统首次添加数据等,今天就利用pyautogui构...
python自动化测试之异常及日志操作实例分析
2021-11-06阅读(3812)评论(0)推荐()这篇文章主要介绍了python自动化测试之异常及日志操作,结合实例形式分析了python自动化测试中的异常捕获与日志记录相关操作技巧,需要的朋友可以参考下
python使用glob检索文件的操作
2021-10-06阅读(3747)评论(0)推荐()这篇文章主要介绍了python使用glob检索文件的操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
在自动化中用python实现键盘操作的方法详解
2021-10-17阅读(3143)评论(0)推荐()今天小编就为大家分享一篇在自动化中用python实现键盘操作的方法详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
取消
提交评论