pandas阅读excel:不要parsing数字

我正在使用Pythonpandas和MS Excel编辑一个xlsx文件。 我在这些程序之间来回迭代。 该文件包含一些文字看起来像数字的列,例如,

在这里输入图像说明

如果我读了这个,我明白了

pd.read_excel ('test.xlsx') A 0 1 1 100 

 pd.read_excel ('test.xlsx').dtypes A int64 dtype: object 

我的问题是:如何才能将文本读取为文本? 阅读后不能parsing它,因为部分信息(即前导零)在转换为数字时会丢失。

感谢您的帮助。

根据这个问题 ,这是大pandas的一个已知的问题。

您可以使用“转换器”参数解决已知问题 (假定您知道列名称):

 >>> pd.read_excel('test.xlsx', converters={'A': str}) A 0 001 1 100 >>> pd.read_excel('test.xlsx', converters={'A': str}).dtypes A object dtype: object 

如果你能够将文件转换为CSV,dtype = str应该工作。

 pd.read_csv('test.csv', dtype=str) 

资料来源: https : //pandas.pydata.org/pandas-docs/stable/generated/pandas.read_excel.html