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

Python一步步帶你操作Excel

 更新時間:2022年08月01日 10:23:19   作者:測試界的飄柔  
這篇文章主要介紹了Python編寫命令行腳本操作excel的方法,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下

?數(shù)據(jù)處理是 Python 的一大應(yīng)用場景,而 Excel 則是最流行的數(shù)據(jù)處理軟件。因此用 Python 進(jìn)行數(shù)據(jù)相關(guān)的工作時,難免要和 Excel 打交道。Python處理Excel 常用的系列庫有:xlrd、xlwt、xlutils、openpyxl

?xlrd - 用于讀取 Excel 文件,支持.xls和.xlsx格式

?xlwt - 用于寫入 Excel 文件,只支持.xls格式

?xlutils - 操作 Excel 文件的實(shí)用工具,如復(fù)制、分割、篩選等

?openpyxl - 既可以讀文件、也可以寫文件、也可以修改文件;但是,openpyxl 庫不支持 xls 格式的Excel文檔。

一、安裝庫的操作

打開cmd,輸入命令進(jìn)行安裝:pip install xlwt

打開cmd,輸入命令進(jìn)行安裝:pip install xlrd

打開cmd,輸入命令進(jìn)行安裝:pip install openpyxl

二、xlwt庫使用

?xlwt - 用于寫入 Excel 文件,只支持.xls格式

1.需求:創(chuàng)建一個新的xls文件中寫入如下數(shù)據(jù),然后保存為login.xls

2.使用xlwt寫入數(shù)據(jù)的步驟

1)導(dǎo)包:import xlwt
2)創(chuàng)建一個文件對象:book=xlwt.Workbook()
3)添加一個sheet工作表:sh1=book.add_sheet(Sheetname)
4)添加內(nèi)容:sh1.write(row,col,value)  #單元格行和列分別從0開始
5)保存文件:book.save(filename)

3.代碼實(shí)現(xiàn)

# coding = utf-8
import xlwt
#創(chuàng)建一個excel文件對象
book = xlwt.Workbook() 
#添sheet工作表
sh1 = book.add_sheet('登錄數(shù)據(jù)') 
sh1.write(0,0,'用戶名') # 在A1單元格寫入數(shù)據(jù)
sh1.write(0,1,'密碼')   # 在B1單元格寫入數(shù)據(jù)
row1 = ['test','test123']
# 結(jié)合循環(huán)寫入一行數(shù)據(jù)
for i in range(len(row1)): 
    sh1.write(1,i,row1[i])
book.save('login.xls') # 保存文件

三、xlrd庫使用

?xlrd - 用于讀取 Excel 文件,支持.xls和.xlsx格式

1.需求:讀取login.xls文件中指定的單元格、指定行、指定的列或者所有的數(shù)據(jù)

2.使用xlrd讀取數(shù)據(jù)的步驟

1)導(dǎo)包:import xlrd
2)打開一個文件:book=xlrd.open_workbook(filename)
3)使用sheet工作表:sh1=book.sheet_by_name(sheet_name)
4)讀取sheet工作表的屬性信息
  print('sheet總行數(shù)',sh1.nrows)
  print('sheet總列數(shù)',sh1.ncols)
5)讀取sheet工作表存儲的文本內(nèi)容
  1)讀取一行:row1=sh1.row_values(row) # 行號從0開始
  2)讀取一列:col1=sh1.col_values(col) # 列號從0開始
  3)讀取一個單元格:cell_value=sh1.cell(row,col).value

3.代碼實(shí)現(xiàn)

# coding = utf-8
import xlrd
book = xlrd.open_workbook('login.xls')
sh1 = book.sheet_by_name('登錄數(shù)據(jù)')
# 讀取第一行的數(shù)據(jù)
row1 = sh1.row_values(0)
print('第一行數(shù)據(jù):',row1)
# 讀取第一列的數(shù)據(jù)
col1 = sh1.col_values(0)
print('第一列數(shù)據(jù):',col1)
# 讀取指定單元格的數(shù)據(jù)
cell = sh1.cell(1,1).value
print('A2單元格的值:',cell)
# 讀取所有的數(shù)據(jù)
rows = sh1.nrows  # 獲取當(dāng)前工作表總的行數(shù)
for i in range(rows):
    print('所有數(shù)據(jù)打印,第{}行,數(shù)據(jù)為:{}:'.format(i,sh1.row_values(i)))

4.代碼運(yùn)行結(jié)果展示:

四、openpyxl庫使用-寫入數(shù)據(jù)

?openpyxl - 既可以讀文件、也可以寫文件、也可以修改Excel文件;但是不支持 xls 格式

1.需求:對已存在的test_api.xlsx文件寫入接口測試結(jié)果,如下圖所示

2.使用openpyx寫入數(shù)據(jù)的步驟

1)導(dǎo)包:import openpyxl
2)打開文件:book = openpyxl.load_workbook(filename)
3)使用sheet工作表:sheet = book[sheetname]
4) 單元格寫入:sh1['F2'] = 'PASS'  或者 sh1.cell(row,col).value='FAIL'  #行和列的索從1開始
6:保存文件:book.save(filename)

3.代碼實(shí)現(xiàn)

# coding = utf-8
import openpyxl
# 打開excel文件
book = openpyxl.load_workbook('test_api.xlsx')
# 通過工作表名字打開工作表
sh1 = book['register']
# 通過單元格的名稱寫入數(shù)據(jù)
sh1['I2'] = '不通過'
# 通過單元格的行、列寫入數(shù)據(jù)
sh1.cell(3,9).value = '通過'
# 保存文件
book.save('test_api.xlsx')

五、openpyxl庫使用-讀取數(shù)據(jù)

1.需求:讀取test_api.xls文件中l(wèi)ogin工作表指定的單元格、指定行、或者所有的數(shù)據(jù)

2.使用openpyx讀取數(shù)據(jù)的步驟

1)導(dǎo)包:import openpyxl
2)打開文件:book = openpyxl.load_workbook(filename)
3)使用sheet工作表:sheet = book[sheetname]
4)讀取sheet工作表的屬性信息
  返回工作表的最大行數(shù):sheet.max_row
  返回工作表的的最大列數(shù):sheet.max_column
5)讀取sheet工作表存儲的文本內(nèi)容
1)按單元格讀?。篶ell1 = sh1['A1'].value 或者 cell2= sh1.cell(row,col).value #行和列的索引值是從1開始的
2) 按行讀取

  for row in sheet.iter_rows(max_row=3):# 讀取前3行數(shù)據(jù)
  for cell in row:
      print(cell.value,end='\t')
  print()

3.代碼實(shí)現(xiàn)

# coding = utf-8
import openpyxl
book = openpyxl.load_workbook('test_api.xlsx')
sh1 = book['login']
# 讀取單元格數(shù)據(jù)
cell1 = sh1['A1'].value
print('A1單元格的值為:',cell1)
cell2 = sh1.cell(1,2).value
print('B1單元格的值為:',cell2)
# 讀取前2行數(shù)據(jù)
print('讀取前2行數(shù)據(jù):') 
for row in sh1.iter_rows(max_row= 2): # 讀取前2行數(shù)據(jù)
    for cell in row:
        print(cell.value,end='\t|\t') # 不換行輸出這一行中每個單元格的值
    print() # 輸出完一行之后換行
# 讀取所有的數(shù)據(jù)
print('讀取所有的數(shù)據(jù):')
rows = sh1.max_row  # 獲取當(dāng)前工作表總的行數(shù)
for row in sh1.iter_rows(max_row=rows): # 讀取所有的數(shù)據(jù)
    for cell in row:
        print(cell.value, end='\t|\t') # 不換行輸出這一行中每個單元格的值
    print() # 輸出完一行之后換行

4、運(yùn)行結(jié)果

到此這篇關(guān)于Python一步步帶你操作Excel的文章就介紹到這了,更多相關(guān)Python Excel內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • python編寫接口測試文檔(以豆瓣搜索為例)

    python編寫接口測試文檔(以豆瓣搜索為例)

    接口測試的方式有很多,比如可以用工具(jmeter,postman)之類,也可以自己寫代碼進(jìn)行接口測試,這篇文章主要給大家介紹了關(guān)于python編寫接口測試文檔,本文以豆瓣搜索功能為例,需要的朋友可以參考下
    2021-07-07
  • python django中8000端口被占用的解決

    python django中8000端口被占用的解決

    今天小編就為大家分享一篇python django中8000端口被占用的解決,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • Python如何判斷字符串是否僅包含數(shù)字

    Python如何判斷字符串是否僅包含數(shù)字

    在用Python進(jìn)行數(shù)據(jù)處理的時候,經(jīng)常會遇到DataFrame中的某一列本應(yīng)該是數(shù)值類型,但由于數(shù)據(jù)不規(guī)范導(dǎo)致在字段中夾雜了非數(shù)值類型,本文就介紹了Python如何判斷字符串是否僅包含數(shù)字,感興趣的可以了解一下
    2022-03-03
  • 排序算法之插入排序法解析

    排序算法之插入排序法解析

    這篇文章主要介紹了排序算法之插入排序法解析,插入排序法是一種簡單但有效的排序算法,其基本思想是將一個待排序的元素逐個插入到已經(jīng)排好序的元素序列中,直至所有元素都被插入完成,從而得到一個有序序列,需要的朋友可以參考下
    2023-07-07
  • Python使用flask作為web服務(wù)器的代碼實(shí)現(xiàn)

    Python使用flask作為web服務(wù)器的代碼實(shí)現(xiàn)

    Python Flask 框架是一個輕量級的 Web 框架,它簡單易用,靈活多變,非常適合用于構(gòu)建小型到中型規(guī)模的 Web 應(yīng)用程序,本文給大家介紹了Python使用flask作為web服務(wù)器的代碼實(shí)現(xiàn),需要的朋友可以參考下
    2024-06-06
  • Python爬蟲必備之XPath解析庫

    Python爬蟲必備之XPath解析庫

    今天給大家?guī)淼氖荘ython爬蟲的相關(guān)知識,文章圍繞著XPath解析庫展開,文中有非常詳細(xì)的代碼示例及介紹,需要的朋友可以參考下
    2021-06-06
  • Python使用Crypto庫實(shí)現(xiàn)加密解密的示例詳解

    Python使用Crypto庫實(shí)現(xiàn)加密解密的示例詳解

    這篇文章主要為大家詳細(xì)介紹了Python如何使用Crypto庫實(shí)現(xiàn)加密解密的功能,文中的示例代碼講解詳細(xì),對我們學(xué)習(xí)Python有一定的幫助,需要的可以參考一下
    2023-01-01
  • Python報mongod:?error?while?loading?shared?libraries:?libcrypto.so.1.1解決

    Python報mongod:?error?while?loading?shared?libraries:?l

    這篇文章主要介紹的是Python報mongod:?error?while?loading?shared?libraries:?libcrypto.so.1.1的解決方法,下面文章解決過程,需要的小伙伴可以參考一下
    2022-02-02
  • vue學(xué)習(xí)筆記之動態(tài)組件和v-once指令簡單示例

    vue學(xué)習(xí)筆記之動態(tài)組件和v-once指令簡單示例

    這篇文章主要介紹了vue學(xué)習(xí)筆記之動態(tài)組件和v-once指令,結(jié)合簡單實(shí)例形式詳細(xì)分析了vue.js動態(tài)組建點(diǎn)擊切換相關(guān)操作技巧,需要的朋友可以參考下
    2020-02-02
  • Python:pycharm中虛擬環(huán)境venv的使用及說明

    Python:pycharm中虛擬環(huán)境venv的使用及說明

    文章介紹了虛擬環(huán)境的必要性和實(shí)踐方法,虛擬環(huán)境可以幫助用戶管理不同項(xiàng)目所需的Python版本和第三方模塊,避免版本沖突和模塊沖突,文章詳細(xì)介紹了如何使用Python自帶的`venv`模塊創(chuàng)建和管理虛擬環(huán)境,并通過命令行和PyCharm兩種方式構(gòu)建虛擬環(huán)境
    2025-01-01

最新評論

和硕县| 定西市| 罗定市| 曲松县| 乐清市| 横山县| 连南| 济南市| 集贤县| 日照市| 靖宇县| 耒阳市| 古丈县| 湖北省| 义乌市| 双柏县| 竹北市| 襄樊市| 临桂县| 象州县| 象山县| 杭锦旗| 深水埗区| 上杭县| 康平县| 出国| 井陉县| 溧水县| 平阴县| 礼泉县| 吉木萨尔县| 盈江县| 金山区| 大田县| 云安县| 谢通门县| 九龙坡区| 化隆| 墨竹工卡县| 建宁县| 右玉县|