Python办公自动化 – 对CSV文件运用和管理文件 / 文件夹

Python办公自动化 – 对CSV文件运用和管理文件 / 文件夹

以下是往期的文章目录,需要可以查看哦。
Python办公自动化 – Excel和Word的操作运用
Python办公自动化 – Python发送电子邮件和Outlook的集成
Python办公自动化 – 对PDF文档和PPT文档的处理
Python办公自动化 – 对Excel文档和数据库的操作运用、设置计划任务



前言

Python办公⾃动化是利⽤Python编程语⾔来创建脚本和程序,以简化、加速和⾃动化⽇常办公任务和⼯作流程的过程。它基于Python的强⼤功能和丰富的第三⽅库,使得能够处理各种办公任务,如⽂档处理、数据分析、电⼦邮件管理、⽹络通信等等。


一、使用Python对文件和文件夹进行管理

Python提供了许多内置库和第三⽅库,⽤于⽂件和⽂件夹管理。
⼀些常⽤的⽅法和库,可以帮助进⾏⽂件和⽂件夹操作:

1、 使⽤内置的 os 模块

os 模块是Python的标准库之⼀,⽤于执⾏⽂件和⽂件夹的操作。以下是⼀些常⻅的 os 模块功能:

# 创建⽂件夹:
import os
folder_name = "my_folder"
os.mkdir(folder_name)

# 删除⽂件夹:
import os
folder_name = "my_folder"
os.rmdir(folder_name)

# 检查⽂件或⽂件夹是否存在:
import os
file_path = "my_file.txt"
if os.path.exists(file_path):
print(f"{
      
      file_path} 存在")

# 遍历⽂件夹中的⽂件:
import os
folder_path = "my_folder"
for filename in os.listdir(folder_path):
print(filename)

2、使⽤第三⽅库 shutil

shutil 库是Python标准库的⼀部分,提供了更⾼级的⽂件和⽂件夹操作。它允许复制、移动、删除⽂件和⽂件夹等更复杂的操作。

# 复制⽂件或⽂件夹:
import shutil
source = "source_file.txt"
destination = "destination_folder"
shutil.copy(source, destination)

# 移动⽂件或⽂件夹:
import shutil
source = "source_file.txt"
destination = "destination_folder"
shutil.move(source, destination)

# 删除⽂件或⽂件夹(包括递归删除):
import shutil
file_or_folder = "file_or_folder"
shutil.rmtree(file_or_folder)

3、使⽤第三⽅库 pathlib (Python 3.4及以上版本)

pathlib 库提供了⼀种更⾯向对象的⽅式来处理⽂件和⽂件夹路径,使代码更具可读性。

# 创建⽂件夹:
from pathlib import Path

folder_name = "my_folder"
path = Path(folder_name)
path.mkdir()

# 删除⽂件或⽂件夹:
from pathlib import Path
file_or_folder = "my_file.txt"
path = Path(file_or_folder)
path.unlink() # 删除⽂件
path.rmdir() # 删除⽂件夹

# 遍历⽂件夹中的⽂件:
from pathlib import Path
folder_path = "my_folder"
path = Path(folder_path)
for file in path.iterdir():
print(file.name)

以上是⼀些⽤于⽂件和⽂件夹管理的常⻅⽅法和库。根据具体的需求,选择适合项⽬的⽅法和库来执⾏⽂件和⽂件夹操作。

二、Python中CSV文件的操作

在Python中操作CSV⽂件时,有许多技巧和常⽤⽅法,以帮助读取、写⼊和处理CSV数据。
下面是⼀些常⻅的CSV⽂件操作技巧:

1、使⽤内置 csv 模块

Python内置了⼀个 csv 模块,可⽤于处理CSV⽂件。可以使⽤ csv.reader 来读取CSV⽂件的内容,以及 csv.writer 来写⼊CSV⽂件。

# 读取CSV⽂件:
import csv
with open('data.csv', 'r') as file:
csv_reader = csv.reader(file)
for row in csv_reader:
print(row)

# 写⼊CSV⽂件:
import csv
data = [['Name', 'Age', 'City'],
['Alice', 25, 'New York'],
['Bob', 30, 'Los Angeles']]
with open('data.csv', 'w', newline='') as file:
csv_writer = csv.writer(file)
csv_writer.writerows(data)

2、使⽤ pandas 库进行数据处理

pandas 是⼀个功能强⼤的数据处理库,可以轻松处理CSV数据。可以使⽤ pandas.read_csv 读取CSV⽂件,以及使⽤ pandas.DataFrame 来处理和操作数据。

# 读取CSV⽂件:
import pandas as pd
df = pd.read_csv('data.csv')

# 写⼊CSV⽂件:
import pandas as pd
data = {
    
    'Name': ['Alice', 'Bob'],
'Age': [25, 30],
'City': ['New York', 'Los Angeles']}
df = pd.DataFrame(data)
df.to_csv('data.csv', index=False)

pandas 还提供了许多数据操作和转换功能,如数据过滤、排序、分组、合并等。

数据过滤

# 使用布尔数组过滤数据
condition = df['column'] > 10
filtered_df = df[condition]

# 使用query方法进行数据过滤
filtered_df = df.query('column > 10')

数据排序

# 按照某一列进行升序排序
sorted_df = df.sort_values('column')

# 按照某一列进行降序排序
sorted_df = df.sort_values('column', ascending=False)

数据分组

# 按照某一列进行分组,并计算每组的平均值
grouped_df = df.groupby('column').mean()

数据合并

# 合并两个DataFrame
merged_df = pd.concat([df1, df2])

# 根据某一列进行合并
merged_df = pd.merge(df1, df2, on='column')

3、处理CSV文件中的头部和索引

CSV⽂件通常包括标题行(列名)和⾏索引。可以使⽤ pandas 的 header 和 index_col 参数来处理这些内容。

# 跳过标题⾏:
df = pd.read_csv('data.csv', header=1) # 跳过第⼀⾏,将其作为列名
# 设置⾃定义列名:
df = pd.read_csv('data.csv', names=['Name', 'Age', 'City'])
# 指定索引列:
df = pd.read_csv('data.csv', index_col='Name') # 使⽤'Name'列作为索引

4、处理缺失值

CSV⽂件中可能存在缺失值,可以使⽤ pandas 的函数来处理它们,如 dropna() 删除包含缺失值的⾏, fillna() 填充缺失值等。
这些技巧和⽅法可以帮助有效地操作和处理CSV⽂件中的数据。根据的具体需求,选择合适的⽅法来读取、处理和写⼊CSV数据。


总结

以上就是今天分享的内容,希望对看到的小伙伴有帮助,后续会持续更新完python办公自动化的文章分享,可以持续关注哦。

猜你喜欢

转载自blog.csdn.net/u014740628/article/details/135107875