我是靠谱客的博主 机智彩虹,最近开发中收集的这篇文章主要介绍python excel 数据类型_python-excel:汉字数据类型问题,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

这是我在这个论坛上的第一个问题。我是python的初学者。在

问:我试图从一个表中检索一个DB2(ibmi)数据并将其写入excel表(.xls)。为了得到数据,我使用了pyodbc,在excel中使用了xlwt模块。

Col4拥有汉字。我知道col4ccsid是935,pyodbc从DB中检索数据,但是当我将这个值写到excel表中时,会抛出以下错误下面是留言是dset1中的数据,如果我打印它。如何将其写入excel而不出现任何问题?在

0(十进制('6331840','RUBO','587','x0exa3x1ax1ax1a',十进制('175'),十进制('3716'))

1(十进制('6331841','RUBO','587','x0exa3x1ax1ax1a','Decimal('24'),Decimal('340'))

2(十进制('6331842','RUBO','587','x0exa3x1ax1ax1a','Decimal('100'),Decimal('1821'))File "C:Python27ToolsjohnEOD_CMR report.py", line 82, in

sh.write(n, i, val)

File "C:Python27libsite-packagesxlwtWorksheet.py", line 1030, in write

self.row(r).write(c, label, style)

File "C:Python27libsite-packagesxlwtRow.py", line 259, in write

raise Exception("Unexpected data type %r" % type(label))

Exception: Unexpected data type

import pyodbc

import os

import sys, traceback

import xlwt

#initiate excel

book = xlwt.Workbook()

sh = book.add_sheet('sheet1')

#get today date YYYYMMDD

now = datetime.datetime.now() # get today's date

today = str(now.year) + str(now.month).zfill(2) + str(now.day).zfill(2)

#SQL statement

sql1 = """SELECT col1, col2, col3, trim(col4)FROM lib.file WHERE date = %s""" % today

con_string = "Driver={iSeries Access ODBC Driver};System=veet;Database=veet;UID=" + user_id + ";pwd=" + password + ";SSL=YES;unicode_results=True"

cnxn = pyodbc.connect(con_string)

cur = cnxn.cursor()

# get the data

dset1 = cur.execute(sql1).fetchall()

cur.close()

# to write column name

x = ['Packlist', 'Carrier', 'Hub', 'City', 'Carton amount', 'DU']

n = 0

for i, hdr in enumerate(x):

sh.write(n,i,hdr)

for i, val in enumerate(dset1):

n+=1

sh.write(n, i, val)

name = today + 'xls'

book.save(name)

问题最新进展:

我终于解决了这个问题。下面是隐藏的bug。。

1第一个技巧是在ODBC驱动程序中使用microsoftcunicode value=ccsid1386对检索到的数据进行编码。。在

^{pr2}$

第二种方法是在工作簿初始化期间使用xlwt解码此值,如下所示。在

帐簿=xlwt.工作手册(encoding=“gb2312”)

谢谢大家给我指点迷津

最后

以上就是机智彩虹为你收集整理的python excel 数据类型_python-excel:汉字数据类型问题的全部内容,希望文章能够帮你解决python excel 数据类型_python-excel:汉字数据类型问题所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(33)

评论列表共有 0 条评论

立即
投稿
返回
顶部