2013-10-10 96 views
0

這個問題是特定於wrt中使用xlrd包的python 我得到了一行excel,它是list的形式,但每個項目都是整數值; 類型:值 這不是字符串。該行被保存;從excel行中提取值只能使用xlrd收取-python

import xlrd 

book = xlrd.open_workbook('myfile.xls') 

sh = book.sheet_by_index(0) 

for rx in range(sh2.nrows): 

    row = sh.row(rx) 

所以行保存有價值;

row=[text:u'R', text:u'xyz', text:u'Y', text:u'abc', text:u'lmn', empty:''] 

這是一個int列表。我想提取的值 -

R 

xyz 

Y 

abc 

lmn 

'' 

必須有一些方法來轉換它,但不知道哪些和如何。

現在,我知道我可以獲得價值;

cell_value = sh.cell_value(rowx=rx, colx=1) 

但我的程序需要首先收集行,然後從保存行中提取值。

謝謝。

回答

0

該行是Cell實例的序列,它們的屬性爲value

for cell in row: 
    cell_value = cell.value 
    # etc 

我不知道你爲什麼要這樣來做 - 參考收集行第一似乎很奇怪我的,因爲你可以從工作表中直接獲得的行。

+0

我需要這樣做的原因是,程序需要選擇性地僅獲取特定行,然後處理這些選定行的單元格值。由於它是大型數據庫,因此需要這樣做,而不是在一個階段爲每個行和單元格執行操作。但你的解決方案工作!謝謝! –

+0

如果我的答案解決了您的問題,您可能希望按照此處所述接受它:http://meta.stackexchange.com/a/5235。這有兩件事。它讓每個人都知道你的問題已經得到解決,並且它給了那個能幫助你回答問題的人。 –