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

Python進階之Excel基本操作介紹

 更新時間:2025年01月24日 10:46:59   作者:一名技術(shù)極客  
在現(xiàn)實中,很多工作都需要與數(shù)據(jù)打交道,Excel 作為常用的數(shù)據(jù)處理工具,一直備受人們的青睞,本文主要為大家介紹了一些Python中Excel的基本操作,希望對大家有所幫助

概述

在現(xiàn)實中,很多工作都需要與數(shù)據(jù)打交道,Excel 作為常用的數(shù)據(jù)處理工具,一直備受人們的青睞,而大部分人都是手動操作 Excel,如果數(shù)據(jù)量較小且是一些簡單的操作還好說,但如果數(shù)據(jù)量較大或是一些復雜的操作,工作量可想而知,因此,我們需要掌握一種簡單、高效的方法來操作 Excel。

在數(shù)據(jù)處理方面,Python 一直扮演著重要的角色,對于 Excel 操作,它有著完整且成熟的第三方庫,使用也較為簡單。

Python 中常用 Excel 操作庫如下:

  • xlrd: 從 Excel 中讀取數(shù)據(jù),支持 xls、xlsx。
  • xlwt: 向 Excel 中寫入數(shù)據(jù),支持 xls。
  • xlutils: 提供了一些 Excel 的實用操作,比如復制、拆分、過濾等,通常與 xlrd、xlwt 一起使用。
  • XlsxWriter: 向 Excel 中寫入數(shù)據(jù),支持 xlsx。
  • openpyxl : 用于讀寫 Excel,支持 xlsx。

寫入

我們向Excel 中寫入一些數(shù)據(jù)。

使用 xlwt

通過pip install xlwt 命令安裝。

import xlwt

# 創(chuàng)建工作簿
wb = xlwt.Workbook()
# 創(chuàng)建表單
sh = wb.add_sheet('test')
# 創(chuàng)建字體對象
font = xlwt.Font()
# 字體加粗
font.bold = True
alm = xlwt.Alignment()
# 設(shè)置左對齊
alm.horz = 0x01
# 創(chuàng)建樣式對象
style1 = xlwt.XFStyle()
style2 = xlwt.XFStyle()
style1.font = font
style2.alignment = alm
# write 方法參數(shù)1:行,參數(shù)2:列,參數(shù)3:內(nèi)容
sh.write(0, 1, '姓名', style1)
sh.write(0, 2, '年齡', style1)
sh.write(1, 1, '張三')
sh.write(1, 2, 50, style2)
sh.write(2, 1, '李四')
sh.write(2, 2, 30, style2)
sh.write(3, 1, '王五')
sh.write(3, 2, 40, style2)
sh.write(4, 1, '趙六')
sh.write(4, 2, 60, style2)
sh.write(5, 0, '平均年齡', style1)
# 保存
wb.save('test.xls')

執(zhí)行結(jié)果:

使用 XlsxWriter

通過pip install XlsxWriter 命令安裝。

import xlsxwriter

???????# 創(chuàng)建工作簿
workbook = xlsxwriter.Workbook('test.xlsx')
# 創(chuàng)建表單
sh = workbook.add_worksheet('test')
fmt1 = workbook.add_format()
fmt2 = workbook.add_format()
# 字體加粗
fmt1.set_bold(True)
# 設(shè)置左對齊
fmt2.set_align('left')
# 數(shù)據(jù)
data = [
    ['', '姓名', '年齡'],
    ['', '張三', 50],
    ['', '李四', 30],
    ['', '王五', 40],
    ['', '趙六', 60],
    ['平均年齡', '', ]
]
sh.write_row('A1', data[0], fmt1)
sh.write_row('A2', data[1], fmt2)
sh.write_row('A3', data[2], fmt2)
sh.write_row('A4', data[3], fmt2)
sh.write_row('A5', data[4], fmt2)
sh.write_row('A6', data[5], fmt1)
chart = workbook.add_chart({
   
     'type': 'line'})
workbook.close()

XlsxWriter 可以很方便的生成圖表。

import xlsxwriter

???????# 創(chuàng)建工作簿
wk = xlsxwriter.Workbook('test.xlsx')
# 創(chuàng)建表單
sh = wk.add_worksheet('test')
fmt1 = wk.add_format()
fmt2 = wk.add_format()
# 字體加粗
fmt1.set_bold(True)
# 設(shè)置左對齊
fmt2.set_align('left')
# 數(shù)據(jù)
data = [
    ['', '姓名', '年齡'],
    ['', '張三', 50],
    ['', '李四', 30],
    ['', '王五', 40],
    ['', '趙六', 60],
    ['平均年齡', '', ]
]
sh.write_row('A1', data[0], fmt1)
sh.write_row('A2', data[1], fmt2)
sh.write_row('A3', data[2], fmt2)
sh.write_row('A4', data[3], fmt2)
sh.write_row('A5', data[4], fmt2)
sh.write_row('A6', data[5], fmt1)
'''
area:面積圖
bar:直方圖
column:柱狀圖
line:折線圖
pie:餅圖
doughnut:環(huán)形圖
radar:雷達圖
'''
chart = wk.add_chart({
   
     'type': 'line'})
# 創(chuàng)建圖表
chart.add_series(
    {
   
     
        'name':'=test!$B$1',
        'categories':'=test!$B$2:$B$5',
        'values':   '=test!$C$2:$C$5'
    }
)
chart.set_title({
   
     'name':'用戶年齡折線圖'})
chart.set_x_axis({
   
     'name':'姓名'})
chart.set_y_axis({
   
     'name':'年齡'})
sh.insert_chart('A9', chart)
wk.close()

讀取

我們使用 xlrd 讀取之前寫入的數(shù)據(jù),使用 pip install xlrd 命令安裝。

import xlrd

# 打開
wb = xlrd.open_workbook('test.xlsx')
print( 'sheet名稱:', wb.sheet_names())
print( 'sheet數(shù)量:', wb.nsheets)
# 根據(jù) sheet 索引獲取 sheet
sh = wb.sheet_by_index(0)
# 根據(jù) sheet 名稱獲取 sheet
# sh = wb.sheet_by_name('test')
print( u'sheet %s 有 %d 行' % (sh.name, sh.nrows))
print( u'sheet %s 有 %d 列' % (sh.name, sh.ncols))
print('第二行內(nèi)容:', sh.row_values(1))
print('第三列內(nèi)容:', sh.col_values(2))
print('第二行第三列的值為:', sh.cell_value(1, 2))
print('第二行第三列值的類型為:', type(sh.cell_value(1, 2)))

修改

之前寫入的數(shù)據(jù)還有一個平均年齡是空著的,我們先讀取之前寫入的數(shù)據(jù),再計算出平均值,最后將平均值寫入。這里要用到 xlutils 模塊,使用 pip install xlutils 安裝。

import xlrd, xlwt
from xlutils.copy import copy

def avg(list):
    sumv = 0
    for i in range(len(list)):
        sumv += list[i]
    return int(sumv / len(list))
# formatting_info 為 True 表示保留原格式
wb = xlrd.open_workbook('test.xls', formatting_info=True)
# 復制
wbc = copy(wb)
sh = wb.sheet_by_index(0)
age_list = sh.col_values(2)
age_list = age_list[1:len(age_list)-1]
avg_age = avg(age_list)
sh = wbc.get_sheet(0)
# 設(shè)置左對齊
alm = xlwt.Alignment()
alm.horz = 0x01
style = xlwt.XFStyle()
style.alignment = alm
sh.write(5, 2, avg_age, style)
wbc.save('test.xls')

以上就是Python進階之Excel基本操作介紹的詳細內(nèi)容,更多關(guān)于Python Excel基本操作的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • Python實現(xiàn)迷宮自動尋路實例

    Python實現(xiàn)迷宮自動尋路實例

    大家好,本篇文章主要講的是Python實現(xiàn)迷宮自動尋路實例,感興趣的同學趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-02-02
  • 一文詳解如何用GPU來運行Python代碼

    一文詳解如何用GPU來運行Python代碼

    前幾天搗鼓了一下Ubuntu,正是想用一下我舊電腦上的N卡,可以用GPU來跑代碼,體驗一下多核的快樂,感興趣的小伙伴快跟隨小編一起了解一下吧
    2023-02-02
  • pandas實現(xiàn)數(shù)據(jù)可視化的示例代碼

    pandas實現(xiàn)數(shù)據(jù)可視化的示例代碼

    本文主要介紹了pandas實現(xiàn)數(shù)據(jù)可視化的示例代碼,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2022-05-05
  • opencv改變imshow窗口大小,窗口位置的方法

    opencv改變imshow窗口大小,窗口位置的方法

    下面小編就為大家分享一篇opencv改變imshow窗口大小,窗口位置的方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04
  • Python機器學習入門(二)之Python數(shù)據(jù)理解

    Python機器學習入門(二)之Python數(shù)據(jù)理解

    這篇文章主要介紹了Python機器學習入門知識,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • python matplotlib工具欄源碼探析二之添加、刪除內(nèi)置工具項的案例

    python matplotlib工具欄源碼探析二之添加、刪除內(nèi)置工具項的案例

    這篇文章主要介紹了python matplotlib工具欄源碼探析二之添加、刪除內(nèi)置工具項的案例,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • Python中使用HTMLParser解析html實例

    Python中使用HTMLParser解析html實例

    這篇文章主要介紹了Python中使用HTMLParser解析html實例,本文直接給出使用示例,并總結(jié)出HTMLParser含有的方法分為兩類,一類是需要顯式調(diào)用的,而另一類不需顯示調(diào)用,需要的朋友可以參考下
    2015-02-02
  • Python 獲取新浪微博的最新公共微博實例分享

    Python 獲取新浪微博的最新公共微博實例分享

    因為工作,需要抓取微博內(nèi)容。在百度上找到多篇關(guān)于用Python實現(xiàn)抓取新浪微博的文章,但似乎都不湊效,還是自己來吧,俗話說自己動手豐衣足食嘛
    2014-07-07
  • Python制作腳本幫女朋友搶購清空購物車

    Python制作腳本幫女朋友搶購清空購物車

    這篇文章主要介紹了Python制作的搶購清空購物車的腳本,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-08-08
  • 以SQLite和PySqlite為例來學習Python DB API

    以SQLite和PySqlite為例來學習Python DB API

    本文將以SQLite和PySqlite為例來學習Python DB API,pysqlite是一個sqlite為python 提供的api接口,它讓一切對于sqlit的操作都變得異常簡單
    2020-02-02

最新評論

九江县| 博罗县| 南汇区| 乐陵市| 罗山县| 金寨县| 乌鲁木齐县| 瑞昌市| 宜章县| 盘锦市| 云南省| 错那县| 肇庆市| 那曲县| 饶河县| 宣威市| 康保县| 海晏县| 东安县| 嵩明县| 凉城县| 安平县| 垣曲县| 同德县| 周口市| 双江| 聂荣县| 道孚县| 台中市| 邓州市| 乌兰县| 晋宁县| 和田市| 廊坊市| 邵阳市| 双流县| 垫江县| 乌什县| 拉萨市| 安图县| 宁安市|