[英]Python xlrd module
根据XLRD模块的文档,
row_values(rowx, start_colx=0, end_colx=None)
“返回给定行中单元格值的切片。”
并给出以下python代码:
import xlrd
wb=xlrd.open_workbook("xl1.xlsx")
sh = wb.sheet_by_index(0)
for rownum in range(sh.nrows):
print sh.row_values(rownum)
输出是:
[12.0, u'test.0']
[34.0, u'te.st']
[u'test123', u'12.test']
exel文件包含以下数据:
12.0,test.0,34.0,te.st,test123,12.test
那么,根据输出,我可以获得哪种类型的数据结构? 它不是一个元组,(因为在打印元组类型时,没有u'作为字符串的前缀),u'的意思是什么? 而且它就像我们在数据结构中有两种类型的数据 - int和“non int”。 这是真的吗? 我在文档中找不到任何相关信息。 谢谢!
首先要做的事情!
我不知道你使用的是哪个版本的xlrd但是根据最新版本(在写这个答案时xlrd 0.9.4):
row_values()
将以列表的形式返回行中的值。 可以通过输入以下内容来验证:
>>> type(sh.row_values(2))
<type 'list'>
接下来获取包含数据类型的行的值,您可以键入以下内容:
>>> sh.row(2)
哪个会给你这样的东西:
[number:12.0, text:u'test.0']
这意味着列表中的第一项是数字,第二项是字符串或也称为文本。
最后,字符串前面的u
表示它是Unicode编码。 请记住,xlrd模块将尝试将excel表中的每个数据呈现为unicode编码,因此您将看到u
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.