【问题标题】:Convert xlsx to csv while dropping sheets and keeping date formats将 xlsx 转换为 csv,同时删除工作表并保持日期格式
【发布时间】:2020-11-07 02:32:09
【问题描述】:

我有一个 .xlsx 文件,我想将其转换为 .csv 文件。我已经完成了一个演示文件,如屏幕截图所示。在.xlsx file 中,我有 3 张纸,我只想保留最后一张。此外,我想以MM/DD/YYYY 格式保存我的日期。

在这里和那里找到了一些关于转换然后丢弃工作表或反之亦然的解决方案。我最接近的是使用来自link : 的解决方案@

但它不保留MM/DD/YYYY 的日期格式,而是将其转换为数字e.g. 44079。尝试搜索解决方案将数字转换为日期,但没有任何内容。

谁能帮我解决这个问题?如果需要,我可以提供更多说明。

我正在用 Python 编码。

【问题讨论】:

  • 不过,您的日期似乎不是以 MM/DD/YYYY 开头的格式。
  • 也许可以试试xlsx2csvgithub.com/dilshod/xlsx2csv。始终可以使用 pandas 进行修改和转换。
  • 嗨@PaulM。如果我转到日期单元格,它显示的是 2020 年 5 月 9 日,如屏幕截图所示。我认为它的显示是 YYYY/MM。如果我错了,请纠正我。
  • 嗨@ipj 对我来说似乎有点复杂。需要一个更简单的解决方案
  • 只需两行代码:from xlsx2csv import Xlsx2csv Xlsx2csv("myfile.xlsx", outputencoding="utf-8").convert("myfile.csv")

标签: python excel pandas csv xlsx


【解决方案1】:

您好,我使用Python using pandas to convert xlsx to csv file. How to delete index column? 的答案解决了我自己的问题

另外,因为日期是转换成东西的,不是我要在转换后的.csv文件e.g.

05-09-2020 00:00:00

我使用 pandas 并将转换后的 csv 文件加载到数据框。从那里我使用df['date made'] = pd.to_datetime(df['date made']) 将日期从对象转换为日期时间。之后我使用df['date made'] = df['date made'].dt.strftime(%m/%d/%Y) 获取

09/05/2020

这是我想要的日期格式。我也重复到期日期的步骤。

希望这有助于那些希望将 .xlsx 转换为 .csv 并对日期进行一些格式化的人。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-09-28
    • 2020-06-08
    • 2020-10-27
    • 2012-11-26
    • 2020-06-18
    • 1970-01-01
    • 2017-08-25
    • 2021-03-19
    相关资源
    最近更新 更多