python读取表格数据_在Python中使用xlrd读取数字Excel数据作为文本

我正在使用xlrd读取Excel文件,我想知道是否有办法忽略Excel文件中使用的单元格格式,并将所有数据导入文本?

以下是我正在使用的代码:

import xlrd

xls_file = 'xltest.xls'

xls_workbook = xlrd.open_workbook(xls_file)

xls_sheet = xls_workbook.sheet_by_index(0)

raw_data = [['']*xls_sheet.ncols for _ in range(xls_sheet.nrows)]

raw_str = ''

feild_delim = ','

text_delim = '"'

for rnum in range(xls_sheet.nrows):

for cnum in range(xls_sheet.ncols):

raw_data[rnum][cnum] = str(xls_sheet.cell(rnum,cnum).value)

for rnum in range(len(raw_data)):

for cnum in range(len(raw_data[rnum])):

if (cnum == len(raw_data[rnum]) - 1):

feild_delim = '\n'

else:

feild_delim = ','

raw_str += text_delim + raw_data[rnum][cnum] + text_delim + feild_delim

final_csv = open('FINAL.csv', 'w')

final_csv.write(raw_str)

final_csv.close()

这段代码是有效的,但是有一些字段,如邮政编码,作为数字导入,所以它们具有十进制零后缀.例如,Excel文件中是否有邮政编码’79854′,将导入为’79854.0′.

我已经尝试在这个xlrd spec找到一个解决方案,但没有成功.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值