xlwings写入数字到Excel时过长会自动转成科学记数法怎么解决

尝试了很多方法但是都会成科学记数法,本人想要把身份证号码写入Excel时发现这个问题搞了半天都没有解决

以下内容部分参考ChatGPT模型:


可以使用xlwings的NumberFormat属性来设置单元格格式,将数字格式设置为文本格式,这样就可以避免科学记数法的问题。

示例代码:

import xlwings as xw

# 打开Excel文档
wb = xw.Book('example.xlsx')

# 选择Sheet
sht = wb.sheets['Sheet1']

# 写入身份证号码(文本格式)
sht.range('A1').value = '身份证号码'
sht.range('A2').value = '320483199901011234'
sht.range('A3').value = '320483199901011235'

# 将单元格格式设置为文本格式
sht.range('A2:A3').number_format = '@'

# 关闭Excel文档
wb.close()

在上面的示例代码中,我们先打开Excel文档,选择Sheet1,然后分别写入两个身份证号码。接着,我们将A2:A3单元格的格式设置为文本格式,这样写入的身份证号码就不会被转成科学记数法了。最后,我们关闭Excel文档。


如果我的建议对您有帮助、请点击采纳、祝您生活愉快

身份证应该定义成text类型,虽然身份证电话这些都是数字,但是不能进行四则运算,其实和一般的文本没有区别