当前位置: 首页 > news >正文

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)  
http://www.lryc.cn/news/284472.html

相关文章:

  • js变量提升
  • C++ 设计模式之策略模式
  • (202401)深度强化学习基础2:策略梯度
  • bgp大AS小AS选路-联邦ebgp选路
  • beego API 自动化文档
  • 百度搜索Push个性化:新的突破
  • 【Oracle】ORA-32017和ORA-00384错误处理
  • MySQL三大日志
  • 力扣每日一练(24-1-20)
  • Pytest系列(2) - assert断言详细使用
  • CodeWave智能开发平台--03--目标:应用创建--10初级采购管理系统总结
  • 外包干了4个月,技术退步明显.......
  • 图片批量建码怎么用?每张图片快速生成二维码
  • 时间复杂度的排序
  • js控制浏览器前进、后退、页面跳转
  • 【长文阅读】MAMBA作者博士论文<MODELING SEQUENCES WITH STRUCTURED STATE SPACES>-Chapter1
  • Unity3D学习之UI系统——GUI
  • 用户ssh正确密码登陆均报错Permission denied, please try again.处理方法
  • IO、NIO、IO多路复用
  • 探索FTP:原理、实践与安全优化
  • git中的语法和术语含义
  • java SECS管理系统 将逐步推出 SECS 客户端(Passive) 管理系统 SECS快速开发平台 springboot secs开发平台
  • 使 a === 1 a === 2 a === 3 为 true 的几种“下毒“方法
  • Canny边缘检测 双阈值检测理解
  • 自动化测试:5分钟了解Selenium以及如何提升自动化测试的效果
  • 【MySQL】——关系数据库标准语言SQL(大纲)
  • 力扣hot100 最长有效括号 动态规划
  • @RequestBody注解基础
  • 前端基础面试题大全
  • 第一讲_HarmonyOS应用开发环境准备