當前位置:首頁 » 編程語言 » pythonxlrd讀取

pythonxlrd讀取

發布時間: 2022-03-16 05:00:32

『壹』 python xlrd怎麼讀取特定行或列的數據

下表從零算起
第一行應該這樣寫
table.row_values(0)

『貳』 python xlrd 讀取的單元格的值,怎麼能確保是文本TEXT類型的,現在某些單元格讀出來是NUMBER,有些是BOOL

讀取TRUE時返回的是1,是因為TRUE這個值在excel文件中保存時就是真值類型0或1,而不是保存文本TRUE(節省存儲空間)。數字也是這樣的。

如果你想把讀取時都變為文字,有兩種方法。


1,在原excel文件中修改。將TRUE真值類型、數字類型轉換成文本類型。


2,在xlrd讀取過程中加入一些簡單的判定,不同數據不同處理。

defread_cell(x,y):
ifcell_type(x,y)==4:#4是真值類型(bool)
return"TRUE"ifcell_value(x,y)==1else"FALSE"
elifcell_type(x,y)==2:#2是數字類型(number)
returnstr(cell_value(x,y))
else:#其他類型不再一一列舉,用到時再做增加
returncell_value(x,y)

『叄』 python 使用xlrd模塊讀取excel文件時,能否讀取單元格的備注

python有很多包可以操作excel單元
其中我用過的有xlrd ,xlwt 一個讀一個寫, 另外可用 openpyxl或者XlsxWriter 進行讀寫, 非常簡單
讀寫單元格只需按列表一樣讀寫元素即可
ws['A1'] = 42
a = ws["A2"]

『肆』 python xlrd怎麼讀取超鏈接

xls 可以 ,xlsx應該不行,要用openpyxl,xlrd 對xlsx的支持不太好

『伍』 python 簡單 xls 讀取 xlrd

defget_Excel_value_s1(col=0,File_Locaiton='C:Config.xlsx',User_Table='Configuration',):
result=[]
wb=xlrd.open_workbook(File_Locaiton)
sh=wb.sheet_by_name(User_Table)
forrowinrange(2,sh.nrows):
rowValuelist=sh.row_values(row)
get=rowValuelist[col]
result.append(get)
returnresult
forvalueinget_Excel_value_s1():
printvalue

為什麼要每次返回下一個值,將所有值添加到列表,一次返回不行嗎

『陸』 為什麼 python xlrd讀取不到含有公式的單元格的值

沒試過,如果是這樣的話。那就是 含有公式的單元格 是動態生成的數據唄。
既然取不到,那就 根據公式 計算出來不就完了。公式應該不會太復雜吧

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

一個不錯的文章,這些基本就能處理所有數據了。
還有就是 時間日期問題 自己網路一下 應該就可以了

『柒』 python為什麼用xlrd讀取一列的數據結果是這樣的:[27030.0, u'', u'', u'', u'', u'', u'']

table.row_values(6)
這個改成
table.row_values(5)試一下

或者自己檢查一下是不是讀取的行錯了。
u''表示這個單元格沒有內容

再不對的話是不是行列弄反了,試一下
table.col_values(6)

『捌』 python xlrd 讀取值的問題。

#-*-coding:utf-8-*-
importwin32com.client

classeasyExcel:
def__init__(self,filename=None):
self.xlApp=win32com.client.Dispatch('Excel.Application')
iffilename:
self.filename=filename
self.xlBook=self.xlApp.Workbooks.Open(filename)
else:
self.xlBook=self.xlApp.Workbooks.Add()
self.filename=''
defsave(self,newfilename=None):
ifnewfilename:
self.filename=newfilename
self.xlBook.SaveAs(newfilename)
else:
self.xlBook.Save()
defclose(self):
self.xlBook.Close(SaveChanges=0)
delself.xlApp
defgetRange(self,sheet,row1,col1,row2,col2):
"returna2darray(i.e.tupleoftuples)"
sht=self.xlBook.Worksheets(sheet)
returnsht.Range(sht.Cells(row1,col1),sht.Cells(row2,col2)).Value
defsetRange(self,sheet,leftCol,topRow,data):
""".
"""

bottomRow=topRow+len(data)-1
rightCol=leftCol+len(data[0])-1
sht=self.xlBook.Worksheets(sheet)
sht.Range(
sht.Cells(topRow,leftCol),
sht.Cells(bottomRow,rightCol)
).Value=data


#舉例,sheet1包含原始記錄,現根據條件提取記錄,寫到sheet2.
if__name__=="__main__":
try:
xls=easyExcel(r'C:UsersNanDesktop est.xlsx')
arr=xls.getRange("Sheet1",2,1,7,3)
res=[]
forname,sex,scoreinarr:
ifname=='張三'andsex=='男':
res.append((name,sex,score))
#數組res就包含你想要的數據了.下面這個只是為了證明.
xls.setRange("Sheet2",1,1,res)
finally:
xls.save()
xls.close()

用牛刀吧..方便快捷生動形象.

『玖』 Python 調用xlrd讀取excel的時候報錯

經過測試,發現你的代碼在'和C這倆字元之間,有一個不可見的unicode字元,它不佔地方,但是確實存在,刪掉就好了。
刪除的辦法是:
1,游標放在'和C之間
2,按一下backspace(退格)鍵,會發現'沒有被刪除,但確實有一個字元被刪除了。
另一種辦法是不要拷貝粘貼,自己手動輸入一遍完整路徑,也能解決這個問題。

熱點內容
安卓手機推特叫什麼 發布:2025-01-16 17:55:32 瀏覽:210
linux下安裝mysql 發布:2025-01-16 17:54:58 瀏覽:630
c語言停留 發布:2025-01-16 17:51:13 瀏覽:959
一機一碼文件加密 發布:2025-01-16 17:36:19 瀏覽:415
軟體登錄密碼用戶名是什麼 發布:2025-01-16 17:11:52 瀏覽:111
我的世界建伺服器該注意什麼 發布:2025-01-16 17:06:40 瀏覽:568
php隨機小數 發布:2025-01-16 17:02:48 瀏覽:139
linuxterminal 發布:2025-01-16 17:02:04 瀏覽:249
如何配置i5的電腦 發布:2025-01-16 17:00:21 瀏覽:264
壓縮空氣泄漏 發布:2025-01-16 16:55:51 瀏覽:259