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

python openpyxl的使用方法

 更新時間:2021年06月22日 15:22:14   作者:臨時營地  
Python借助openpyxl可以對xlsx文件進行操作,幫助大家高效辦公,處理excel文件,下面就介紹一下相關的方法,以及一個小例子。

生成新Excel

from openpyxl import Workbook
from openpyxl.utils import get_column_letter

wb = Workbook()

dest_filename = 'empty_book.xlsx'

ws1 = wb.active
ws1.title = "range names"

for row in range(1, 40):
    ws1.append(range(600))
ws2 = wb.create_sheet(title="Pi")
ws2['F5'] = 3.14

ws3 = wb.create_sheet(title="Data")
for row in range(10, 20):
    for col in range(27, 54):
        _ = ws3.cell(column=col, row=row, value="{0}".format(get_column_letter(col)))
print(ws3['AA10'].value)

wb.save(filename=dest_filename)

一共創(chuàng)建了三個Sheet

創(chuàng)建Sheet的三種方法

ws1 = wb.create_sheet("Mysheet") # 在末尾添加
# or
ws2 = wb.create_sheet("Mysheet", 0) # 在開頭添加
# or
ws3 = wb.create_sheet("Mysheet", -1) # 在倒數(shù)第二位添加

給Sheet中某cell賦值

ws2['F5'] = 3.14

賦值cell的值

ws3.cell(column=col, row=row, value="{0}".format(get_column_letter(col)))

讀取Excel

from openpyxl import load_workbook
wb = load_workbook(filename = 'empty_book.xlsx')
sheet_ranges = wb['range names']
print(sheet_ranges['D18'].value)

加載文件

wb = load_workbook(filename = 'empty_book.xlsx')

獲取sheet

sheet_ranges = wb['range names']

一個例子

我們的目標是將相同考號的數(shù)據(jù)放入到一行中,并計算總成績

首先創(chuàng)建一個tab頁

這里需要注意直接

ws = wb['總成績']

肯定不行,因為這時候沒有這個tab呢 直接就會報 KeyError: 'Worksheet 總成績 does not exist.' 所以需要先檢查一下tab頁是否存在

if not '總成績' in wb.sheetnames:
    wb.create_sheet('總成績')
ws = wb['總成績']

需要注意的是最后一定要進行保存操作,否則無用 wb.save('first.xlsx')

收集數(shù)據(jù)

# 對每個tab中的分數(shù)數(shù)據(jù)進行收集,放入對應的數(shù)據(jù)行中

for pos, tabName in enumerate(wb.sheetnames):
    if tabName != '總成績':
        wstt = wb[tabName]
        for row in wstt.iter_rows(min_row=2, values_only=True):
            for ind, code in enumerate(ws['A']):
                if code.value == row[0]:
                    ws.cell(ind + 1, 4 + pos, row[2])
                    break

保存總成績

一開始直接用多字段相加

for po, row in enumerate(ws.iter_rows(min_row=2, values_only=True)):
    ws.cell(po + 1, 3, 0 + row[3] + row[4] + row[5] + row[6] + row[7] + row[8] + row[9])

報錯如下

ws.cell(po + 1, 3, 0 + row[3] + row[4] + row[5] + row[6] + row[7] + row[8] + row[9])
TypeError: unsupported operand type(s) for +: 'int' and 'NoneType'

原因是其中存在NoneType,int和NoneType不能相加。 可以用int(value or 0)來將對應的None, 0, [], ""這些Python認為是False的轉換為1。

總結

人生苦短,我用 Python,在強大的Python幫助下,我們只需幾行代碼就可以生成我們想要的Excel。

以上就是python openpyxl的使用方法的詳細內(nèi)容,更多關于python openpyxl的使用的資料請關注腳本之家其它相關文章!

相關文章

  • Python使用ftplib實現(xiàn)簡易FTP客戶端的方法

    Python使用ftplib實現(xiàn)簡易FTP客戶端的方法

    這篇文章主要介紹了Python使用ftplib實現(xiàn)簡易FTP客戶端的方法,實例分析了ftplib模塊相關設置與使用技巧,需要的朋友可以參考下
    2015-06-06
  • python自動化測試selenium定位frame及iframe示例

    python自動化測試selenium定位frame及iframe示例

    這篇文章主要為大家介紹了python自動化測試selenium定位frame及iframe示例的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助
    2021-11-11
  • 利用python開發(fā)app實戰(zhàn)的方法

    利用python開發(fā)app實戰(zhàn)的方法

    這篇文章主要介紹了利用python開發(fā)app實戰(zhàn)的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-07-07
  • Django model select的多種用法詳解

    Django model select的多種用法詳解

    最近看到 大神 運維咖啡吧的 一篇文章,這里只做個備份,講的是各種 django model 查詢,發(fā)現(xiàn)不錯,十分感謝該大神的無私奉獻
    2019-07-07
  • python 控制臺單行刷新,多行刷新實例

    python 控制臺單行刷新,多行刷新實例

    今天小編就為大家分享一篇python 控制臺單行刷新,多行刷新實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-02-02
  • protobuf 序列化和反序列化操作流程

    protobuf 序列化和反序列化操作流程

    Protocol Buffers(protobuf)是一種輕量級的數(shù)據(jù)交換格式,可以用于結構化數(shù)據(jù)的序列化和反序列化,它使用二進制格式來編碼數(shù)據(jù),以提高傳輸效率和數(shù)據(jù)壓縮比,這篇文章主要介紹了protobuf 序列化和反序列化操作流程,需要的朋友可以參考下
    2024-06-06
  • django drf框架自帶的路由及最簡化的視圖

    django drf框架自帶的路由及最簡化的視圖

    這篇文章主要介紹了django-drf框架自帶的路由以及最簡化的視圖,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-09-09
  • python內(nèi)置數(shù)據(jù)類型使用方法和繼承關系

    python內(nèi)置數(shù)據(jù)類型使用方法和繼承關系

    這篇文章主要介紹了python內(nèi)置數(shù)據(jù)類型使用方法和繼承關系,介紹內(nèi)容有python包含的內(nèi)置序列、使用內(nèi)置的數(shù)據(jù)類型等相關資料,需要的小伙伴可以參考一下
    2022-03-03
  • Python實現(xiàn)查詢剪貼板自動匹配信息的思路詳解

    Python實現(xiàn)查詢剪貼板自動匹配信息的思路詳解

    這篇文章主要介紹了Python實現(xiàn)查詢剪貼板自動匹配信息,本文通過示例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-07-07
  • python實現(xiàn)圖像檢索的三種(直方圖/OpenCV/哈希法)

    python實現(xiàn)圖像檢索的三種(直方圖/OpenCV/哈希法)

    這篇文章主要介紹了python實現(xiàn)圖像檢索的三種(直方圖/OpenCV/哈希法),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-08-08

最新評論

乳山市| 金华市| 开鲁县| 西林县| 阿巴嘎旗| 宁南县| 华阴市| 晋州市| 青阳县| 内丘县| 云龙县| 宣武区| 香港 | 普格县| 霸州市| 大埔区| 舒兰市| 马山县| 蒲城县| 曲周县| 山东省| 衡阳县| 台东市| 大荔县| 石河子市| 安阳市| 渭源县| 涟水县| 普兰县| 龙井市| 卢湾区| 水富县| 忻州市| 农安县| 呼和浩特市| 玉门市| 昌黎县| 神农架林区| 雷波县| 晋江市| 宜宾县|