我编写了一个 Python 脚本,使用 CSV 和 xlrd 包将 .xlsx 二进制 excel 文件转换为制表符分隔的 .txt 文件。不幸的是,每个单元格都转换为字符串(这是可以理解的),每个整数都转换为以字符串表示的浮点数。例如:
Excel 中的一个单元格有整数 5。
这将从我的脚本输出为“5.0”。
考虑到下游流程,保持原始 excel 文件和转换后的 .txt 文件之间的类型一致性至关重要。转换后的数据类型很难辨别,因为如果不查看原始文件,根本无法判断某个数字原本是整数还是浮点数。
我的最终问题是:
Excel 是否会自动将所有数值保存为浮点数?
如果是这样,有没有办法调整设置以允许整数?
谢谢。
答案1
Excel 在工作表中仅使用少数数据类型。我引用:
类型始终以下列类型之一到达你的函数:类型编号,类型字符串,类型Bool,类型错误,多种类型,xltype缺失, 或者类型零
因此,您可以看到,期望整数不符合这个概念。类型编号涵盖所有数字(包括其等价物,如日期/时间值),在 VBA 中它显示为双倍的。