利用Python把EXCEL表格的sheet拆成不同文件,并以sheet名称命名

import pandas as pd

# 读取Excel文件
file_path = r'D:\wave\nian\年_用.xlsx'
xls = pd.ExcelFile(file_path)

# 遍历每个sheet并保存为单独的Excel文件
for sheet_name in xls.sheet_names:
    # 读取sheet数据
    df = pd.read_excel(file_path, sheet_name=sheet_name)
    # 拆分的文件路径
    output_file_path = f'D:\\wave\\nian\\{sheet_name}.xlsx'
    # 保存为单独的Excel文件
    df.to_excel(output_file_path, index=False)

让我更详细地解释每个函数和代码行的用法。

```python
import pandas as pd
```
这行代码导入了名为 pandas 的 Python 库,并将其命名为 pd。Pandas 是一个开源数据分析和处理库,提供了丰富的数据结构和功能,用于简化数据操作和分析。

```python
file_path = r'D:\wave\nian\年_用.xlsx'
```
这行代码创建了一个字符串变量 file_path,其中包含要读取的 Excel 文件的路径。r'...' 语法表示原始字符串,其中的反斜杠字符 `\` 不会被转义。

```python
xls = pd.ExcelFile(file_path)
```
这行代码使用 pd.ExcelFile() 函数创建了一个 ExcelFile 对象,并将其赋值给变量 xls。ExcelFile 对象代表一个 Excel 文件,允许你对文件中的工作表进行操作,而不必将整个文件加载到内存中。这有助于减少内存占用,特别是对于大型 Excel 文件而言。

```python
for sheet_name in xls.sheet_names:
```
这是一个 for 循环,它遍历了 xls.sheet_names,该属性是一个包含 Excel 文件中所有工作表名称的列表。对于每个工作表名称,循环执行下面的代码块。

```python
df = pd.read_excel(file_path, sheet_name=sheet_name)
```
这行代码使用 pd.read_excel() 函数从 Excel 文件中读取数据,并将其存储在名为 df 的 DataFrame 中。read_excel() 函数用于从 Excel 文件读取数据,并返回一个 DataFrame。它的第一个参数是文件路径,第二个参数 sheet_name 指定要读取的工作表名称。

```python
output_file_path = f'D:\\wave\\nian\\{sheet_name}.xlsx'
```
这行代码创建了一个字符串变量 output_file_path,它表示输出 Excel 文件的路径。这里使用了 f-string,其中 `{sheet_name}` 会被替换为当前工作表的名称。

```python
df.to_excel(output_file_path, index=False)
```
这行代码使用 DataFrame 的 to_excel() 方法将数据写入到 Excel 文件中。to_excel() 方法用于将 DataFrame 的内容写入到 Excel 文件中。它的第一个参数是输出文件的路径,第二个参数 index=False 指定不将 DataFrame 的索引写入到 Excel 文件中。

综上所述,这段代码用于读取一个 Excel 文件,然后遍历其中的每个工作表。对于每个工作表,它将数据读取到一个 DataFrame 中,并将该 DataFrame 的内容保存为一个单独的 Excel 文件。每个输出文件的名称与对应的工作表名称相同。

Python代码:

import pandas as pd

# 读取Excel文件
file_path = r'D:\wave\nian\年_用.xlsx'
xls = pd.ExcelFile(file_path)

# 遍历每个sheet并保存为单独的Excel文件
for sheet_name in xls.sheet_names:
    # 读取sheet数据
    df = pd.read_excel(file_path, sheet_name=sheet_name)
    # 拆分的文件路径
    output_file_path = f'D:\\wave\\nian\\{sheet_name}.xlsx'
    # 保存为单独的Excel文件
    df.to_excel(output_file_path, index=False)

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

___Y1

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值