Python文件自动化处理

os模块

  • Python标准库
  • 和操作系统有关的操作
  • 创建、移动、复制文件和文件夹
  • 文件路径和名称处理

路径的操作

  • 获取当前Python程序运行路径
  • 不同操作系统之间路径的表示方式
  1. windows中采用反斜杠(\)作为文件夹之间的分隔符
  2. Mac和Linux中采用斜杠(/)作为文件夹之间的分隔符

把文件夹里面的文件夹里的文件夹里的文件都找出来:

os.walk(xxx)

搜索匹配文件

字符串内置方法

  • startswith()
  • endswith()

glob模块

  • *匹配所有
  • ?匹配任意单个字符
  • [seq]匹配seq中的任何字符
  • [!seq]匹配任何不在seq中的字符

查询文件信息 .stat()

|--------|--------------|-----------------------|
| 序号 | 属性 | 含义 |
| 1 | st_size | 文件体积大小(单位:bytes) |
| 2 | st_atime | 文件的最近访问时间 |
| 3 | st_mtime | 文件的最近修改时间 |
| 4 | st_ctime | Windows下表示创建时间 |
| 5 | st_birthtime | 只在Mac,Linux下可用,表示创建时间 |

创建临时文件和文件夹

  • 创建临时文件存储数据TemporaryFile()
  • 创建临时文件夹 TemporaryDirectory()

创建文件夹 os.mkdir(新文件夹名称)

创建多层文件夹 os.makedirs(新文件夹名称)

复制文件 shutil.copy(a,b)

复制文件夹 shutil.copytree(a,b)

移动文件 shutil.move(a,b)

删除文件 os.remove()

删除文件夹 shutil.rmtree()

重命名 os.rename(a,b)

读取压缩包zip内文件

  • zipfile.ZipFile()
  • .namelist()

读取压缩包内文件信息

  • .getinfo()

处理Excel文件

openpyxl模块

  • 可以读取和写入Excel文件
  • 第三方模块,需要单独安装
  • 处理Excel数据
  • 处理Excel样式
  • 在表格内插入图表

在线安装方式

  • Windows 用户: pip install openpyxl
  • Mac用户: pip3 install openpyxl

测试

  • Windows用户打开命令行 输入 python
  • Mac 用户打开终端输入 python3
  • 然后输入 import openpyxl

Excel表格

打开和读取表格数据

  • 打开工作薄: load_workbook(文件名)
  • 获取工作表:workbook[sheet名称]
  • 获取表格尺寸:sheet.dimensions

Python打开及读取Excel表格内容

获取表格内某个格子的数据 sheet['A1'] cell.value

获取一系列格式 sheet['A1:A5'] sheet['A'] sheet['A:C'] sheet[5] .rows

指定行和列的范围,按行获取,按列获取

.iter_rows(min_row=最低行数,max_row=最高行数,min_col=最低列数,max_col=最高列数)

Python向Excel表格中写入内容

向某个格子写入内容

  • sheet['A1']='hello,Python'

用某个格子写入内容

  • cell.value='hello,Python'

使用Python列表数据插入一行

  • sheet.append(Python列表)

插入一列

  • .insert_cols(idx=数字编号)

插入多列

  • .insert_cols(idx=数字编号,amount=要插入的列数)

插入一行

  • .insert_rows(idx=数字编号)

插入多行

  • .insert_rows(idx=数字编号,amount=要插入的行数)

Word自动化处理

python-docx模块

  • 可以创建、修改Word(.docx)文件
  • 非Python标准模块,需要安装才能使用

获取文档对象 Document()

获得段落列表 doc.paragraphs

获取段落文字内容 paragraphs.text

获取文字块列表 paragraphs.runs

添加一级标题 doc.add_heading('标题名称',level=标题等级)

添加段落 paragraph.add_paragraph('段落文字内容')

添加文字块 paragraph.add_run('文字内容')

保存文件 doc.save('文件名.docx')

添加图片

  • doc.add_picture(图片地址)
  • doc.add_picture(图片地址,width=宽度,height=高度)

添加表格

  • doc.add_table(rows=多少行,cols=多少列)

设置文字字体样式

  • run.font.样式=xxx

设置段落样式

  • paragraph.alignment=对齐方式

行间距

  • paragraph.paragraph_format.line_spacing=2.0

段前与段后间距

  • paragraph.paragraph_format.space_before=Pt(12)
  • paragraph.paragraph_format.space_after=Pt(12)
相关推荐
youcans_11 分钟前
2025年数学建模美赛 A题分析(4)楼梯使用人数模型
python·数学建模
计算机毕设定制辅导-无忧学长2 小时前
Nginx 性能优化技巧与实践(二)
运维·nginx·性能优化
查理零世2 小时前
【算法】数论基础——约数个数定理、约数和定理 python
python·算法·数论
Eiceblue3 小时前
Python 合并 Excel 单元格
开发语言·vscode·python·pycharm·excel
烛.照1034 小时前
Nginx部署的前端项目刷新404问题
运维·前端·nginx
华纳云IDC服务商6 小时前
超融合服务器怎么优化数据管理?
运维·服务器
会飞的土拨鼠呀6 小时前
Prometheus监控minio对象存储
运维·prometheus
hy____1236 小时前
动态内存管理
linux·运维·算法
ks胤墨6 小时前
Docker快速部署高效照片管理系统LibrePhotos搭建私有云相册
运维·docker·容器
weixin_421133416 小时前
编写python 后端 vscode 安装插件大全
开发语言·vscode·python