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

使用 python 拆分 excel 文件

文章目录

    • 1、安装虚拟环境(在特定文件夹内)
    • 2、脚本 split.sh
    • 3、运行脚本(在特定文件夹内)
    • 4、结果

1、安装虚拟环境(在特定文件夹内)

brew install python3
xcode-select --install
python3 -m venv my_pandas_venv
source my_pandas_venv/bin/activate
pip install pandas
pip install openpyxl

2、脚本 split.sh

#!/bin/bash# 检查 Python3 和 pandas 库是否已安装
if ! command -v python3 &> /dev/null; thenecho "需要安装 Python3。"exit 1
fiif ! python3 -c "import pandas" &> /dev/null; thenecho "需要安装 pandas 库(对于Python3)。"exit 1
fi# 输入参数验证
if [ $# -ne 1 ]; thenecho "请提供要拆分的 Excel 文件的路径作为参数。"exit 1
fiinput_file="$1"# 使用 pandas 读取 Excel 文件
python3 << EOF
import pandas as pd# 读取 Excel 文件
try:df = pd.read_excel("$input_file")
except Exception as e:print("读取 Excel 文件时发生错误:", str(e))exit(1)# 获取总行数
total_rows = len(df)# 计算每个文件应包含的行数(向上取整)
rows_per_file = -(-total_rows // 2)# 拆分并保存到两个文件
file1 = df[:rows_per_file]
file2 = df[rows_per_file:]
try:file1.to_excel("output1.xlsx", index=False)file2.to_excel("output2.xlsx", index=False)
except Exception as e:print("保存拆分文件时发生错误:", str(e))exit(1)print("拆分完成。")
EOF

3、运行脚本(在特定文件夹内)

chmod +x split.sh
source my_pandas_venv/bin/activate
(my_pandas_venv) ➜  excelSplit ./split.sh split.xlsx  

4、结果

在这里插入图片描述
在这里插入图片描述
拆分后的文件
在这里插入图片描述
在这里插入图片描述

http://www.lryc.cn/news/326056.html

相关文章:

  • uniapp小程序中onShareAppMessage(OBJECT)实现带参数的分享功能
  • 5个免费的3D钣金CAD软件
  • 3.26学习总结
  • Cisco Catalyst3850交换机RTU license使用方法
  • 简明 Python 教程(第5章 函数)
  • flutter 保存一堆多语言翻译词条,由key和value组成
  • 3月25日,每日信息差
  • Git常用指令使用
  • 数据结构与算法 顺序表的基本运算
  • docker部署nacos(单机与集群)
  • 开启Safari手势支持
  • Amuse:.NET application for stable diffusion
  • Java冒泡排序详细讲解
  • python数据解析xpath
  • 工业镜头常用参数之实效F(Fno.)和像圈
  • what is apache?
  • 【二叉树】Leetcode 94. 二叉树的中序遍历【简单】
  • Linux进程控制(等待)
  • 结构体-C语言
  • Unity DOTS中的baking(四)blob assets
  • 第三十天-Flask模板 Jinja2
  • 在项目中数据库如何优化?【MySQL主从复制(创建一个从节点复制备份数据)】【数据库读写分离ShardingJDBC(主库写,从库读)】
  • Fragment 与 ViewPager的联合应用(2)
  • OriginBot智能机器人开源套件
  • Java Web-Maven
  • .Net 异步委托
  • web前端面试题---->HTML、CSS
  • 移动端Web笔记day03
  • c++的学习之路:3、入门(2)
  • 面试经典150题【91-100】