почему мой код Python возвращает текст: «моя строка», а не просто моя строка?

мой фрагмент кода выглядит так:

for current_row in range(worksheet.nrows):
    fname_text = worksheet.row(current_row)[0]
    lname_text = worksheet.row(current_row)[1]
    cmt = worksheet.row(current_row)[2]
    print (fname_text, lname_text, cmt)

это печатает:

text:'firstname' text:'lastname' text'the cmt line'

я хочу, чтобы он просто вернулся:

firstname lastname the cmt line

что мне нужно изменить, чтобы это произошло?


person dalearyous    schedule 22.02.2014    source источник
comment
Находится ли text: внутри worksheet.row(current_row)? Потому что из вопроса кажется, что он печатается с вашими реальными строками...   -  person panoptical    schedule 22.02.2014


Ответы (1)


Вот как выглядят Cell объекты:

>>> sheet.row(0)
[text:u'RED', text:u'RED', empty:'']
>>> sheet.row(0)[0]
text:u'RED'
>>> type(sheet.row(0)[0])
<class 'xlrd.sheet.Cell'>

Вы можете получить завернутые значения несколькими способами:

>>> sheet.row(0)[0].value
u'RED'
>>> sheet.row_values(0)
[u'RED', u'RED', '']

и помните, что вы можете получить доступ к ячейкам, не проходя через row:

>>> sheet.cell(0,0).value
u'RED'
person DSM    schedule 22.02.2014