Python Xlrd结果格式

时间:2011-12-04 12:47:44

标签: python xlrd

我想知道,xlrd的结果格式。

参见代码

>>> sh.cell_value(rowx=2, colx=1)
u'Adam Gilchrist xxxxxxxxxxxxxxxxxxxxx'

现在我尝试运行res.search

>>> temp1=sh.cell_value(rowx=2, colx=1)
>>> x=re.search("Adam",'temp1')
>>> x.group()

Traceback (most recent call last):
  File "<pyshell#58>", line 1, in <module>
    x.group()
AttributeError: 'NoneType' object has no attribute 'group'

我一无所获。

  1. 首先我想知道结果是什么'你'。
  2. sh.cell_value返回的结果格式是什么?是整数,字符串等。
  3. 我们可以在它们上运行正则表达式吗?

2 个答案:

答案 0 :(得分:1)

  1. 这是一个Unicode字符串
  2. Cell_value返回单元格的值。类型取决于单元格的类型。
  3. 是。您可以在Unicode字符串上使用正则表达式,但您的代码不正确。
  4. 您的代码将“temp1”作为字符串传递给re.search。它不传递变量temp1。你想要:

    >>> x=re.search(u"Adam",temp1)
    

答案 1 :(得分:1)

首先回答你的问题

  1. 首先我想知道结果是什么'你'?你是unicode字符串的限定符。所以u'Adam Gilchrist xxxxxxxxxxxxxxxxxxxxx'表示以unicode进行测试。
  2. sh.cell_value返回的结果格式是什么。是整数,字符串等?它的unicode字符串
  3. 我们可以在它们上运行正则表达式吗?是的,你可以这就是你的工作方式
  4. temp1=u'Adam Gilchrist xxxxxxxxxxxxxxxxxxxxx'
    x=re.search(u'Adam',temp1)    
    x.group()    
    u'Adam'
    

    只有你必须在unicode中指定模式。