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

Python openpyxl模塊學(xué)習(xí)之輕松玩轉(zhuǎn)Excel

 更新時間:2021年12月07日 10:13:25   作者:編程簡單學(xué)  
Python提供了許多操作Excel的模塊,能夠讓我們從繁瑣的工作中騰出雙手。本文主要為大家介紹的是openpyxl模塊,它的功能相對與其他模塊更為齊全,感興趣的小伙伴快來學(xué)習(xí)一下吧

前言

當(dāng)你需要每天對 Excel 做大量重復(fù)的操作,如果只靠人工來做既浪費時間,又十分枯燥,好在 Python 為我們提供了許多操作 Excel 的模塊,能夠讓我們從繁瑣的工作中騰出雙手。

今天就和大家分享一個快速處理 Excel 的模塊 openpyxl,它的功能相對與其他模塊更為齊全,足夠應(yīng)對日常出現(xiàn)的問題。

openpyxl 安裝

直接在命令提示符中輸入。

pip install openpyxl

或使用豆瓣鏡像安裝。

pip install -i https://pypi.douban.com/simple openpyxl

安裝成功后,下面就看看如何使用

打開/創(chuàng)建工作簿

示例工作簿?

工作表【一等獎】

工作表【二等獎】

(1)打開本地工作簿

>>> from openpyxl import load_workbook
>>> wb = load_workbook('獲獎名單.xlsx')

(2)創(chuàng)建空的工作薄

>>> from openpyxl import Workbook
>>> wb1 = Workbook()

訪問工作表

創(chuàng)建新工作表,可指定插入的位置(0:首位,-1:末尾)。

>>> wb.create_sheet('new_sheet', 0)
<Worksheet "new_sheet">

獲取工作簿中所有工作表。

>>> wb.sheetnames
['new_sheet', '一等獎', '二等獎']

使用列表推導(dǎo)式遍歷獲取所有工作表名稱。

>>> [sheet.title for sheet in wb]
['new_sheet', '一等獎', '二等獎']

使用 wb[sheetname] 來獲取一個工作表對象

>>> wb['二等獎']
<Worksheet "二等獎">

獲取活動表(即打開工作簿首先出現(xiàn)的工作表)。

>>> wb.active
<Worksheet "一等獎">

獲取工作表行列信息。

>>> sheet1 = wb['一等獎']
>>> sheet1.max_column
7
>>> sheet1.max_row
6

獲取單元格信息

訪問某個單元格

>>> sheet1['D3']
<Cell '一等獎'.D3>
>>> sheet1.cell(row=3, column=4)
<Cell '一等獎'.D3>

如果訪問單元格式添加 value 參數(shù)則會修改當(dāng)前單元格的值。

>>> sheet1.cell(3, 4).value
'基于Spark、Python的醫(yī)護人員信息抽取與管理'
>>> sheet1.cell(3, 4, value='Python')
<Cell '一等獎'.D3>
>>> sheet1.cell(3, 4).value
'Python'

獲取單元格的值、坐標(biāo)、行索引、列索引。

>>> sheet1['D3'].value
'Python'
>>> sheet1['D3'].coordinate
'D3'
>>> sheet1['D3'].row
3
>>> sheet1['D3'].column
4

訪問多個單元格

使用切片來訪問多個單元格,這里的切片與列表切片有區(qū)別,列表切片是前閉后開,Excel 中的切片是前閉后閉。

(1)選取 A1:B2 區(qū)域的單元格。

>>> sheet1['A1':'B2']
((<Cell '一等獎'.A1>,
  <Cell '一等獎'.B1>),
 (<Cell '一等獎'.A2>,
  <Cell '一等獎'.B2>))

選取單列數(shù)據(jù)。

>>> sheet1['D']
(<Cell '一等獎'.D1>,
    ...
 <Cell '一等獎'.D6>)

選取B,C列數(shù)據(jù)。

 >>> sheet1['B:C']
((<Cell '一等獎'.B1>,
    ...
  <Cell '一等獎'.B6>),
 (<Cell '一等獎'.C1>,
    ...
  <Cell '一等獎'.C6>))

選取單行數(shù)據(jù)。

>>> sheet1[3]
(<Cell '一等獎'.A3>,
 <Cell '一等獎'.B3>,
    ...
 <Cell '一等獎'.F3>,
 <Cell '一等獎'.G3>)

選取第2,3行數(shù)據(jù)。

>>> sheet1[2:3]
((<Cell '一等獎'.A2>,
    ...
  <Cell '一等獎'.G2>),
 (<Cell '一等獎'.A3>,
    ...
  <Cell '一等獎'.G3>))

遍歷獲取數(shù)據(jù)

按行遍歷指定范圍(B2:C3)數(shù)據(jù)。

>>> for row in  sheet1.iter_rows(min_row=2, max_row=3, min_col=2, max_col=3):
        for cell in  row:
            print(cell.coordinate)
 
B2
C2
B3
C3

按列遍歷指定范圍(B2:C3)數(shù)據(jù)。

>>> for col in  sheet1.iter_cols(min_row=2, max_row=3, min_col=2, max_col=3):
        for cell in col:
            print(cell.coordinate)
 
B2
B3
C2
C3

如果 iter_rows()/iter_cols() 中指定參數(shù) values_only=True,那么將只返回單元格的值

按行遍歷所有數(shù)據(jù)。

>>> tuple(sheet1.rows)
((<Cell '一等獎'.A1>,
  ...
  <Cell '一等獎'.G1>),
  ...
  ...
 (<Cell '一等獎'.A6>,
  ...
  <Cell '一等獎'.G6>))

按列遍歷所有數(shù)據(jù)。

>>> tuple(sheet1.columns)
((<Cell '一等獎'.A1>,
  ...
  <Cell '一等獎'.A6>),
  ...
  ...
 (<Cell '一等獎'.G1>, 
  ...
  <Cell '一等獎'.G6>))

修改工作表

單元格賦值

新增一列計算 作者 人數(shù)。

>>> for row_index in range(2, sheet1.max_row + 1):
	      sheet1.cell(row_index, 8).value = len(sheet1.cell(row_index, 6).value.split(','))

使用公式給單元格賦值,H7 統(tǒng)計作者總?cè)藬?shù)。

>>> sheet1['H7'] = '=SUM(H1:H6)'

追加一行數(shù)據(jù)

使用列表按序傳入值。

>>> sheet1.append([str(n) for n in range(6)])

使用字典指定 列索引:列值 。

>>> sheet1.append({'A':'1','C':'3'})

插入空白行

在指定位置插入空白行, idx 行索引,插入的位置;amount 插入空白行的數(shù)量

>>> sheet1.insert_rows(idx=2, amount=2)

刪除工作表

>>> wb.remove(wb['new_sheet'])

保存工作簿

>>> wb.save('獲獎名單V1.xlsx')

修改樣式

字體

設(shè)置 B2 單元格字體格式為,顏色可以用十六進制顏色代碼。

>>> from openpyxl.styles import Font
 
>>> new_font = Font(name='微軟雅黑', size=20, color='3333CC', bold=True)
>>> sheet1['B2'].font = new_font

單元格背景顏色

>>> from openpyxl.styles import PatternFill, colors
>>> sheet1["A2"].fill = PatternFill("solid", fgColor=colors.BLUE)
>>> sheet1["A3"].fill = PatternFill("solid", fgColor='FF66CC')

對齊方式

設(shè)置 D2 中的數(shù)據(jù) 垂直居中 和 水平居中 。

>>> from openpyxl.styles import Alignment
>>> sheet1['D2'].alignment = Alignment(horizontal='center', vertical='center')

行高/列寬

設(shè)置第2行行高為40,C列列寬為20。

>>> sheet1.row_dimensions[2].height = 40
>>> sheet1.column_dimensions['C'].width = 20

合并/拆分單元格

合并單元格只需要指定左上角和右下角的單元格坐標(biāo)。

>>> sheet.merge_cells('A1:C3')

拆分單元格后,合并區(qū)域的值會賦給左上角單元格A1。

>>> sheet.unmerge_cells('A1:C3')

以上就是Python openpyxl模塊學(xué)習(xí)之輕松玩轉(zhuǎn)Excel的詳細(xì)內(nèi)容,更多關(guān)于Python openpyxl模塊的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python學(xué)習(xí)Turtle庫畫對稱勾股樹體會分形驚艷

    Python學(xué)習(xí)Turtle庫畫對稱勾股樹體會分形驚艷

    這篇文章主要為大家介紹了Python學(xué)習(xí)中如何使用Turtle庫畫對稱勾股樹,從而體會到分形世界的驚艷,文中附含詳細(xì)示例代碼有需要的朋友可以借鑒參考下
    2021-09-09
  • Python使用LRU緩存策略進行緩存的方法步驟

    Python使用LRU緩存策略進行緩存的方法步驟

    本文主要介紹了Python使用LRU緩存策略進行緩存的方法步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2022-05-05
  • 使用python-opencv讀取視頻,計算視頻總幀數(shù)及FPS的實現(xiàn)

    使用python-opencv讀取視頻,計算視頻總幀數(shù)及FPS的實現(xiàn)

    今天小編就為大家分享一篇使用python-opencv讀取視頻,計算視頻總幀數(shù)及FPS的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • 詳解selenium + chromedriver 被反爬的解決方法

    詳解selenium + chromedriver 被反爬的解決方法

    這篇文章主要介紹了詳解selenium + chromedriver 被反爬的解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • python time.strptime格式化實例詳解

    python time.strptime格式化實例詳解

    在本篇文章里小編給大家整理的是一篇關(guān)于python time.strptime格式化實例詳解內(nèi)容,對此有興趣的朋友們可以學(xué)習(xí)參考下。
    2021-02-02
  • python 鏈接和操作 memcache方法

    python 鏈接和操作 memcache方法

    下面小編就為大家?guī)硪黄猵ython 鏈接和操作 memcache方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • 利用Python3編寫一個電腦錄屏神器

    利用Python3編寫一個電腦錄屏神器

    這篇文章主要為大家詳細(xì)介紹了如何利用Python3編寫一個簡易的電腦錄屏神器,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以動手嘗試一下
    2022-08-08
  • python編碼問題匯總

    python編碼問題匯總

    這篇文章主要給大家分享的是python編碼問題匯總,字符編碼簡單介紹和發(fā)展史及使用方法的一些介紹,文章內(nèi)容詳細(xì),具有一定的參考價值,需要的小伙伴可以參考一下
    2022-03-03
  • Python簡單實現(xiàn)詞云圖代碼及步驟解析

    Python簡單實現(xiàn)詞云圖代碼及步驟解析

    這篇文章主要介紹了Python簡單實現(xiàn)詞云圖代碼解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06
  • Python之Selenium自動化瀏覽器測試詳解

    Python之Selenium自動化瀏覽器測試詳解

    這篇文章主要為大家詳細(xì)介紹了Python自動化瀏覽器測試,使用Selenium,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-01-01

最新評論

乐东| 靖远县| 三门峡市| 巴林右旗| 池州市| 吉隆县| 开远市| 萝北县| 铜陵市| 桂东县| 鄄城县| 崇左市| 宁都县| 建平县| 阿克| 清涧县| 米易县| 肥西县| 崇明县| 涿州市| 上思县| 大丰市| 深圳市| 舟山市| 深泽县| 怀仁县| 兴宁市| 建瓯市| 河西区| 深圳市| 汾西县| 渝中区| 五常市| 晴隆县| 永和县| 东兴市| 汉中市| 广昌县| 中山市| 双柏县| 松原市|