鱼C论坛

 找回密码
 立即注册
查看: 3136|回复: 2

在Macos上如何使用python将.xls文件转换成.xlsx

[复制链接]
发表于 2020-8-31 02:01:59 | 显示全部楼层 |阅读模式
30鱼币
各位大佬们,
小弟我用的是MacOS Catalina 10.15.5,现在想用python快速将一个.xls文件转换成.xlsx,应该怎么做?
之前我在Win 10上有个什么win32的操作方法可以实现,但是mac貌似没有这个功能?
麻烦大家帮帮忙,因为我一次性就要转换上千份文件,如果手动一个个做就太慢了

小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-8-31 08:46:36 | 显示全部楼层
  1. import os
  2. import os.path
  3. import win32com.client as win32

  4. def xls_to_xlsx():
  5.     rootdir = u'E:\\A'
  6.     # 三个参数:父目录;所有文件夹名(不含路径);所有文件名
  7.     for parent, dirnames, filenames in os.walk(rootdir):
  8.         for fn in filenames:
  9.             filedir = os.path.join(parent, fn)
  10.             # print(filedir)
  11.             excel = win32.gencache.EnsureDispatch('Excel.Application')
  12.             wb = excel.Workbooks.Open(filedir)
  13.             # xlsx: FileFormat=51
  14.             # xls:  FileFormat=56,
  15.             wb.SaveAs(filedir.replace('xls', 'xlsx'), FileFormat=51)  
  16.             wb.Close()
  17.             excel.Application.Quit()

  18. if __name__ == '__main__':
  19.     xls_to_xlsx()
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2020-8-31 16:22:38 | 显示全部楼层
您好,可以使用 pyexcel,例如
  1. import pyexcel as p

  2. p.save_book_as(file_name='1.xls',
  3.                dest_file_name='1.xlsx')
复制代码


也可以安装命令pyexcel-cli,使用命令:
  1. pyexcel transcode 1.xls 1.xlsx
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-26 16:06

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表