python xlrd 读取的单元格的值,怎么能确保是文本TEXT类型的,现在某些单元格读出来是NUMBER,有些是BOOL 为什么 python xlrd读取不到含有公式的单元格的值

\u7528python\u7684xlrd\u6a21\u5757\u8bfb\u51fa\u6765\u7684\u6570\u636e\u90fd\u662funicode\uff0c\u8bf7\u95ee\u600e\u4e48\u89e3\u7801\uff1f

\u4f60\u662f\u5728WINDOWS\u7cfb\u7edf\u4e2d\u5417\uff1fWIN\u7cfb\u7edf\u4e2d\u6587\u662fGBK\u3002

return_str.encode('gbk')
\u8bd5\u8bd5

\u6ca1\u8bd5\u8fc7\uff0c\u5982\u679c\u662f\u8fd9\u6837\u7684\u8bdd\u3002\u90a3\u5c31\u662f \u542b\u6709\u516c\u5f0f\u7684\u5355\u5143\u683c \u662f\u52a8\u6001\u751f\u6210\u7684\u6570\u636e\u5457\u3002
\u65e2\u7136\u53d6\u4e0d\u5230\uff0c\u90a3\u5c31 \u6839\u636e\u516c\u5f0f \u8ba1\u7b97\u51fa\u6765\u4e0d\u5c31\u5b8c\u4e86\u3002\u516c\u5f0f\u5e94\u8be5\u4e0d\u4f1a\u592a\u590d\u6742\u5427

http://www.cnblogs.com/lhj588/archive/2012/01/06/2314181.html

\u4e00\u4e2a\u4e0d\u9519\u7684\u6587\u7ae0\uff0c\u8fd9\u4e9b\u57fa\u672c\u5c31\u80fd\u5904\u7406\u6240\u6709\u6570\u636e\u4e86\u3002
\u8fd8\u6709\u5c31\u662f \u65f6\u95f4\u65e5\u671f\u95ee\u9898 \u81ea\u5df1\u767e\u5ea6\u4e00\u4e0b \u5e94\u8be5\u5c31\u53ef\u4ee5\u4e86

读取TRUE时返回的是1,是因为TRUE这个值在excel文件中保存时就是真值类型0或1,而不是保存文本TRUE(节省存储空间)。数字也是这样的。

如果你想把读取时都变为文字,有两种方法。


1,在原excel文件中修改。将TRUE真值类型、数字类型转换成文本类型。


2,在xlrd读取过程中加入一些简单的判定,不同数据不同处理。

 def read_cell(x,y):
    if cell_type(x,y)==4: #4是真值类型(bool)
        return "TRUE" if cell_value(x,y)==1 else "FALSE"
    elif cell_type(x,y)==2: #2是数字类型(number)
        return str(cell_value(x,y))
    else:#其他类型不再一一列举,用到时再做增加
        return cell_value(x,y)


扩展阅读:python手机版下载官方 ... python登录网站 ... 学python后到底能干什么 ... python random sample ... python解释器手机版下载 ... python xlsx ... python初学编程必背 ... python视频教程在线观看 ... python和c++学哪个好 ...

本站交流只代表网友个人观点,与本站立场无关
欢迎反馈与建议,请联系电邮
2024© 车视网