最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python使用xlrd模塊實現(xiàn)操作Excel讀寫的方法匯總

 更新時間:2024年10月01日 15:17:01   作者:【1758872】的博客  
本文介紹Python中使用xlrd、xlwt、xlutils模塊操作Excel文件的方法,xlrd用于讀取Excel文件,但2.0.0版本后不支持.xlsx格式,xlwt用于創(chuàng)建和寫入Excel文件,而xlutils主要用于復(fù)制和處理Excel文件,詳細(xì)介紹了如何打開文件、獲取工作表信息、操作行列數(shù)據(jù)和處理日期格式數(shù)據(jù)

1.1、xlrd模塊介紹

xlrd:用于讀取Excle數(shù)據(jù)文件將返回的數(shù)據(jù)對象放到內(nèi)存中,然后查詢數(shù)據(jù)文件對象的相關(guān)信息。

xlwt:用于在內(nèi)存中生成新的數(shù)據(jù)文件對象,處理完成后寫入到Excel數(shù)據(jù)文件中。

xlutils:主要的作用就是copy新的文件對象,在新的數(shù)據(jù)對象中完成數(shù)據(jù)處理操作。

注意:在使用 xlrd 讀取 .xlsx 文件時,由于 xlrd 從版本 2.0.0 開始停止支持 .xlsx 格式,可能會遇到 xlrd.biffh.XLRDError: Excel xlsx file; not supported 的錯誤。

如果需要讀取.xlsx文件,你可能需要安裝1.2.0版本的xlrd。

1.2、xlrd操作方法匯總

1.2.1、Excel操作

1.2.1.1、打開文件

import xlrd workbook = xlrd.open_workbook('test.xls') print(workbook) # <xlrd.book.Book object at 0x7f592100ff50>

1.2.1.2、獲取所有的表名

import xlrd workbook = xlrd.open_workbook(r'./code/excelRead/test.xls') # 獲取所有的工作表名 sheet_names = workbook.sheet_names() print(sheet_names) # ['sdxl', 'hzgg', 'sdyxz', 'TB2018'] # 獲取所有的sheet對象 Sheets = workbook.sheets() print(Sheets) # [Sheet 0:<sdxl>, Sheet 1:<hzgg>, Sheet 2:<sdyxz>, Sheet 3:<TB2018>]

1.2.1.3、獲取指定的Sheet

import xlrd workbook = xlrd.open_workbook(r'./code/excelRead/test.xls') # 方式一:通過索引選取 sheet1 = workbook.sheets()[0] print(sheet1 ) # Sheet 0:<sdxl> # 方式二:通過索引選取 sheet2 = workbook.sheet_by_index(2) print(sheet2) # Sheet 2:<sdyxz> # 方式三:通過表名選取,返回一個<class 'xlrd.sheet.Sheet'>對象 sheet = workbook.sheet_by_name("hzgg") print(sheet) # Sheet 1:<hzgg>

1.2.1.4、某個sheet是否導(dǎo)入完畢

# 通過索引,檢查某個sheet是否導(dǎo)入完畢 print(workbook.sheet_loaded(0)) # True # 通過文件名,檢查某個sheet是否導(dǎo)入完畢 print(workbook.sheet_loaded("hzgg")) # True

1.2.2、sheet對象的基本操作

1.2.2.1、sheet表行操作

1.2.2.1.1、獲取表中所有的行數(shù)

import xlrd workbook = xlrd.open_workbook(r'./code/excelRead/test.xls') sheet2 = workbook.sheet_by_name("hzgg") # 特別注意,這是屬性而不是方法,不加括號 print(sheet2.nrows) # 17

1.2.2.1.2、返回指定行的所有單元格數(shù)值組成的列表

1.2.2.1.3、獲取某行的類型及數(shù)據(jù)

1.2.2.1.4、獲取某行的類型的列表

單元類型ctype:empty為0,string為1,number為2,date為3,boolean為4, error為5(左邊為類型,右邊為類型對應(yīng)的值) 

1.2.2.1.5、以切片形式獲取某行的類型及數(shù)據(jù)
1.2.2.1.6、獲取某行的長度
1.2.2.1.7、獲取sheet的所有行生成器


1.2.2.2、sheet表列操作

1.2.2.2.1、獲取有效列數(shù)

import xlrd workbook = xlrd.open_workbook(r'./code/excelRead/test.xls') sheet2 = workbook.sheet_by_name("hzgg") # 獲取有效列數(shù) print(sheet2.ncols) # 9

1.2.2.2.2、獲取某列數(shù)據(jù)
1.2.2.2.3、獲取某列類型
1.2.2.2.4、以切片方式獲取某列類型及數(shù)據(jù) 

1.2.2.3、單元格操作


1.2.2.4、單元格中的日期/時間操作

在使用xlrd讀取excel時,我們常常會遇到日期格式的數(shù)據(jù),如果我們不經(jīng)過任何處理,那么我們得到會是如 45089.0、45171.0 這樣的excel時間戳。那么我們該如何讀取呢?這里介紹倆方法。

1.2.2.4.1、xlrd.xldate_as_tuple(xldate, datemode)

xlrd.xldate_as_tuple(xldate,datemode)

    :param xldate: 要處理的單元格值,自然是excel中的日期數(shù)據(jù)

    :param datemode: 使用哪條基準(zhǔn)的時間戳(0代表1900-01-01為基準(zhǔn),1代表1904-01-01為基準(zhǔn));常使用1900為基準(zhǔn)

返回值:返回一個元組,類似于(year,month,day,hour,minute,nearest_second)

但是,僅適用于date類型的excel單元格,不適用于time類型的單元格,對于time類型的單元格值,報錯:XLDateAmbiguous

1.2.2.4.2、xlrd.xldate.xldate_as_datetime(xldate, datemode)

xlrd.xldate.xldate_as_datetime(xldate,datemode)

    :param xldate: 要處理的單元格值,自然是excel中的日期數(shù)據(jù)

    :param datemode: 使用哪條基準(zhǔn)的時間戳(0代表1900-01-01為基準(zhǔn),1代表1904-01-01為基準(zhǔn));常使用1900為基準(zhǔn)

返回值:datetime對象,格式 year-month-day hour:minute:second

但是,對于time類型的單元格值,轉(zhuǎn)化后自動以基準(zhǔn)補(bǔ)充;如基準(zhǔn)選擇1900時,時間 13:09:30 轉(zhuǎn)化后為:1900-01-01 23:08:00

到此這篇關(guān)于Python使用xlrd模塊實現(xiàn)Excel讀寫的方法匯總的文章就介紹到這了,更多相關(guān)xlrd模塊實現(xiàn)Excel讀寫內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python:目標(biāo)檢測模型預(yù)測準(zhǔn)確度計算方式(基于IoU)

    python:目標(biāo)檢測模型預(yù)測準(zhǔn)確度計算方式(基于IoU)

    今天小編就為大家分享一篇python:目標(biāo)檢測模型預(yù)測準(zhǔn)確度計算方式(基于IoU),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-01-01
  • pytorch教程網(wǎng)絡(luò)和損失函數(shù)的可視化代碼示例

    pytorch教程網(wǎng)絡(luò)和損失函數(shù)的可視化代碼示例

    這篇文章主要介紹了pytorch教程中網(wǎng)絡(luò)和損失函數(shù)的可視化,文中附含詳細(xì)的代碼示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2021-09-09
  • python中的os庫實戰(zhàn)案例

    python中的os庫實戰(zhàn)案例

    os模塊是Python與操作系統(tǒng)交互的接口,它提供了豐富的函數(shù)和方法來處理文件和目錄、訪問環(huán)境變量、執(zhí)行系統(tǒng)命令等,本文全面解析Python os模塊,涵蓋文件目錄操作、路徑處理、環(huán)境變量、進(jìn)程控制等核心功能,感興趣的朋友一起看看吧
    2025-08-08
  • Python使用smtplib模塊發(fā)送電子郵件的流程詳解

    Python使用smtplib模塊發(fā)送電子郵件的流程詳解

    Python中自帶的smtplib模塊可以進(jìn)行基于SMTP協(xié)議的郵件操作,這里我們便總結(jié)了Python使用smtplib模塊發(fā)送電子郵件的流程詳解,并對一些常見的問題給出了解決方法:
    2016-06-06
  • keras Lambda自定義層實現(xiàn)數(shù)據(jù)的切片方式,Lambda傳參數(shù)

    keras Lambda自定義層實現(xiàn)數(shù)據(jù)的切片方式,Lambda傳參數(shù)

    這篇文章主要介紹了keras Lambda自定義層實現(xiàn)數(shù)據(jù)的切片方式,Lambda傳參數(shù),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • python深度學(xué)習(xí)tensorflow實例數(shù)據(jù)下載與讀取

    python深度學(xué)習(xí)tensorflow實例數(shù)據(jù)下載與讀取

    這篇文章主要為大家介紹了python深度學(xué)習(xí)tensorflow實例數(shù)據(jù)下載與讀取示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • pytorch中的dataloader使用方法詳解

    pytorch中的dataloader使用方法詳解

    這篇文章主要介紹了pytorch中的dataloader使用方法詳解,構(gòu)建自己的dataloader是模型訓(xùn)練的第一步,本篇文章介紹下pytorch與dataloader以及與其相關(guān)的類的用法,需要的朋友可以參考下
    2023-11-11
  • jupyter閃退的解決方法及卸載與安裝教程

    jupyter閃退的解決方法及卸載與安裝教程

    如果Anaconda的Jupyter Notebook無法打開并且頻繁閃退,可能是由于一些配置問題或者軟件沖突引起的,本文就來介紹一下jupyter閃退的解決方法及卸載與安裝教程,感興趣的可以了解一下
    2023-11-11
  • Python中__init__的用法和理解示例詳解

    Python中__init__的用法和理解示例詳解

    在Python中定義類經(jīng)常會用到__init__函數(shù)(方法),首先需要理解的是,兩個下劃線開頭的函數(shù)是聲明該屬性為私有,不能在類的外部被使用或訪問,從文字理解比較困難,下面通過示例代碼幫助大家理解__init__在python中用法,感興趣的朋友一起看看吧
    2023-02-02
  • 利用Python優(yōu)雅的登錄校園網(wǎng)

    利用Python優(yōu)雅的登錄校園網(wǎng)

    這篇文章主要介紹了如何利用Python優(yōu)雅的登錄校園網(wǎng),幫助大家更好的理解和使用python,感興趣的朋友可以了解下
    2020-10-10

最新評論

宁陕县| 太谷县| 平远县| 荆门市| 赞皇县| 平谷区| 盐津县| 绥化市| 台北县| 新兴县| 乌审旗| 榕江县| 梨树县| 襄樊市| 玉门市| 桐庐县| 桂林市| 茶陵县| 巴南区| 西乌珠穆沁旗| 成武县| 阿拉尔市| 岑溪市| 崇礼县| 山西省| 濮阳市| 石城县| 沙雅县| 洪江市| 织金县| 团风县| 公安县| 舞钢市| 浮山县| 土默特右旗| 富顺县| 遂平县| 花莲市| 濮阳市| 迁安市| 桂阳县|