【Python】群内答疑3:pandas读写Excel时银行卡号、身份证号等数字无法正常显示

原文:https://mp.weixin.qq.com/s/cHsQoHnJ9F57iKEeYj0UCw

源数据(Excel)

 

 

 问题:

1、编号前面的数字0没有了

2、身份证好显示科学记数法

 

 

 第一步:python正常读取显示 ----converters

import pandas as pd
# converters参数,可以指定读取某些列为指定数据类型;
df = pd.read_excel("info.xlsx",converters={"身份证":str,"编号":str})
df

 

 

 第二步:Python导出Excel正常显示-----加上\t

df["编号"] = df["编号"].apply(lambda x: "\t" + x)
df["身份证"] = df["身份证"].apply(lambda x: "\t" + x)

df.to_csv("info2.csv",encoding="gbk")
df.to_excel("info2.xlsx",encoding="gbk")

在每个数据前面加一个制表符\t即可。其实你也可以在数据前面加一个英文状态下的单引号',导出excel后,加了制表符的显示结果是最好。

 

 

更多技能请关注,群主会不定期分享,没有任何套路,只为技术

 

posted @ 2020-07-31 18:01  HuaBro  阅读(2032)  评论(0编辑  收藏  举报