iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >十个Python办公自动化操作分别是怎样的
  • 513
分享到

十个Python办公自动化操作分别是怎样的

2023-06-15 14:06:50 513人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

十个python办公自动化操作分别是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。 一、OS模块相关1.遍历文件夹批量操作的前提就是对文件夹进行遍历,使用o

十个python办公自动化操作分别是怎样的,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。

 一、OS模块相关

1.遍历文件夹

批量操作的前提就是对文件夹进行遍历,使用os模块可以轻松的遍历文件夹,os.walk 遍历后产生三个参数:

“当前文件夹路径包含文件夹名称[列表形式]包含文件名称[列表形式]”

代码如下,大家可以根据自己的路径进行修改

import os      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)

当手上的需求明确有获取给定路径各级文件夹下所有符合条件的文件,并进行相应的批处理操作时,即可使用 os.walk

2.目标路径是否是文件

有时我们需要判断一个目录下是否存在文件也可以使用os模块。

给定一个目标路径 path ,通过一行代码就能够判断这是文件还是文件夹路径

import os  path = 'xxx' print(os.path.isfile(path))

3.获取路径中的文件名

os.path.basename 可以直接从绝对路径中获取最后的文件名,当然如果用传统的字符串切割方式也可以,即  path.split('\\')[-1]

import os  path = 'xxx' print(os.path.basename)

4.创建文件夹

创建文件夹的代码非常常用,因为往往生成的新文件都希望有个新的文件夹存储,代码如下:

import os  dirpath = 'xxx' os.mkdir(dirpath)

但是,如果希望创建的文件夹已经存在,再运行 os.mkdir()  则会报错而终止代码。为了避免这一情况的发生,可以在创建文件夹之前先判断文件夹是否存在。

用到的代码是 os.path.exists,只有当路径不存在(即 os.path.exists 返回的结果是 False时),才会创建:

import os  dirpath = 'xxx' if not os.path.exists(dirpath):     os.mkdir(dirpath)

5.获取桌面路径

获取桌面路径也是非常常用的操作,可以使用os.path.join(os.path.expanduser("~"),  'Desktop')获取桌面的绝对路径。

这样做的好处是可以把数据放在桌面上,在不同的电脑上都能调用代码对数据进行处理。如果是在一条电脑上把桌面路径固定在字符串中,则换一台电脑就必须修改桌面路径。代码如下:

import os  desktop_path = os.path.join(os.path.expanduser("~"), 'Desktop') print(desktop_path)

当然把上面的代码包装成一个函数 GetDesktopPath() 需要时调用它会更加方便

import os  def GetDesktopPath():     return os.path.join(os.path.expanduser("~"), 'Desktop')

6.重命名文件/文件夹

需要用到 os.rename() 方法,下面的代码示例中分别演示如何重命名文件和文件夹

import os  os.rename('practice.txt', 'practice_rename.txt')  # 重命名文件 os.rename('文件夹1', '文件夹2') # 重命名文件夹

7.批处理文件 - 1

除了前面的 os.walk 之外,有其他的 os  模块下方法可完成获取指定路径的全部或符合条件的文件(非遍历各级文件夹的需求),还可以使用下面两个代码第一种用到的方法是os.scandir(),使用如下:

import os  path = 'xxx' for file in os.scandir(path):      print(file.name, file.path)

8.批处理文件 - 2

上面代码最后输出的是 给定路径下各内容的名字、绝对路径第二种方法使用 os.listdir(),它比 os.scandir()  简单一些,可直接调用输出名称而非路径:

import os   path = 'xxx' for file in os.listdir(path):     print(fil

二、shutil模块相关

9.移动文件/文件夹

shutil也是经常出现在办公自动化场景中的模块,我常用的就是移动文件/文件夹。

需要用到shutil.move 方法,下面的代码示例中分别演示如何移动文件和文件夹:

import shutil   shutil.move(r'.\practice.txt', r'.\文件夹1/')  shutil.move(r'.\practice.txt', r'.\文件夹1/new.txt')

注意到上面后两行代码的区别吗?前一行是将目标文件移动到目标文件夹里,而后一行,在将目标文件移动到目标文件夹里的同时,能够对其进行重命名

也就是说,如果我们需要移动某个或某些文件到新的文件夹,并且需重命名文件,则我们并不需要用os.rename 先命名文件再用 shutil.move  将其移动的指定文件夹,而是可以用 shutil.move 一步到位。

三、glob模块相关

10.批处理文件 - 3

最后要介绍的是glob模块,也是办公自动化必须要掌握的一个模块,同样可以用于批处理文件。

glob 最重要的功能就是搜索获取同一级或者各子级下符合条件的文件(绝对路径),非常适合写批处理的代码。

有时候我们需要对大量文件进行相同操作,在写完针对一份文件的操作后,只需要加上几行代码,就可以完成批处理全部文件的工作。大致代码框架如下:

import glob      for file in glob.glob('***  的使用表示用通配符指代给定路径下的任何一层,recursive 参数允许遍历搜索。

关于十个Python办公自动化操作分别是怎样的问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注编程网Python频道了解更多相关知识。

--结束END--

本文标题: 十个Python办公自动化操作分别是怎样的

本文链接: https://www.lsjlt.com/news/280480.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作