日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python如何处理表格_Python是如何处理Excel表格的?方法简单!

發(fā)布時間:2025/3/21 python 35 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python如何处理表格_Python是如何处理Excel表格的?方法简单! 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

寫在前面

Python常見的數(shù)據(jù)文件處理有5種,今天我們來講講其中的Excel如何處理!

Excel是大家工作當中使用頻率比較高的一款辦公軟件了所以我們很有必要學習一下,那么Python是如何處理excel呢,下面就來講講~~

正文

?

1.兩大庫xlrd,xlwt

1).Python操作excel主要用到xlrd和xlwt這兩個庫

即xlrd是讀excel,xlwt是寫excel的庫,名字也蠻好記得,xl是excel的縮寫,rd是read,wt是write.xlrd可以解析微軟的.xls and .xlsx兩種各種的電子表格

2).如何安裝

用pip install xlrd就可以安裝xlrd模塊

用pip install xlwt就可以安裝xlwt模塊

如果小伙伴是用Pycharm的話更簡單,直接打開File/Setting/Project/Project Interpreter,然后選擇左邊的綠色加號安裝

2.如何讀一個excel文件

比如有這樣一個"user_data.xlsx"表格,第一個sheet叫"data",內容如下:

?

1).打開表格

file_name='user_data.xlsx'

excel_file=os.getcwd()+'\'+file_name

rdata=xlrd.open_workbook(excel_file)

print type(rdata)

>>

我們用open_workbook這個函數(shù)打開一個excel文件,并返回一個rdata對象,有同學好奇這個rdata是啥,我們type一下

發(fā)現(xiàn)data是:xlrd這個模塊下面的book文件下面的Book類的實例對象

有點拗口,但確實是這樣的,不信可以看源碼

2).獲取表格的基本信息

print 'sheets nums:',rdata.nsheets#excel sheets 個數(shù)

>>

sheets nums: 1

3).每個sheets名字

print 'sheets names:',rdata.sheet_names()#excel sheets 每個名字

>>

sheets names: [u'data']

4).每個sheet的行列總數(shù),比如第一個sheet

sheet1=rdata.sheet_by_index(0)

print 'rows:',sheet1.nrows

print 'clos',sheet1.ncols

>>rows=11,cols=3

5),獲取行,列的對象

獲取第一行的內容

sh1=rdata.sheet_by_index(0)

print sh1.row(0)

>>

[text:u'\u65f6\u95f4', text:u'\u4eba\u6570']

print sh1.row_values(1)

>>

[u'\u65f6\u95f4', u'\u4eba\u6570']

#返回的是列表對象,中文會轉成的unicode顯示

獲取第二列的內容

print sh1.col(1)

>>

[text:u'\u4eba\u6570', number:16.0, number:21.0,

number:34.0, number:48.0, number:30.0, number:36.0,

number:28.0, number:26.0, number:24.0, number:46.0]

#返回的是列表對象,text表示是文本對象,number是數(shù)字

>>print sh1.col_values(1)

[u'\u4eba\u6570', 16.0, 21.0, 34.0, 48.0, 30.0,

36.0, 28.0, 26.0, 24.0, 46.0]

我們可以利用列表切片訪問:第二列到第5列

>>print sh1.col_values(1)[1:5]

[16.0, 21.0, 34.0, 48.0]

也可以利用默認的col_values參數(shù)

col_values(self, colx, start_rowx=0, end_rowx=None)

print sh1.col_values(1,1,5)

>>

[16.0, 21.0, 34.0, 48.0]

6).獲取單元格cell的內容

xlrd對excel里面內容分成下面7種的,是枚舉類型

(

XL_CELL_EMPTY,

XL_CELL_TEXT,

XL_CELL_NUMBER,

XL_CELL_DATE,

XL_CELL_BOOLEAN,

XL_CELL_ERROR,

XL_CELL_BLANK, # for use in debugging, gathering stats, etc

) = range(7)

我們來看一下,第一行第一列的單元格是個字符串

sh1=rdata.sheet_by_index(0)

cell_0_0=sh1.cell(0,0)

print cell_0_0

print cell_0_0.ctype

print cell_0_0.value

>>

text:u'\u65f6\u95f4'

1

時間

#1確實對應的是文本

我們來看一下,第二行第一列的單元格:日期

cell_1_0=sh1.cell(1,0)

print cell_1_0

print cell_1_0.ctype

print cell_1_0.value

>>

xldate:42736.0

3

42736.0

#3確實對應的是日期 (有小伙伴問日期怎么變成這個數(shù)字,

#因為日期被轉換成了xldate對象,一會我們會轉換回來,后面會詳細講)

我們來看一下,第二行第二列的單元格:數(shù)字

cell_1_1=sh1.cell(1,1)

print cell_1_1

print cell_1_1.ctype

>>

number:16.0

2

16.0

#2確實對應的是日期 (有小伙伴問日期怎么變成這個數(shù)字,不急后面會講)

3.如何寫數(shù)據(jù)進表格

主要是用xlwt模塊,現(xiàn)在我們要把上面的'data.xlsx'表格中人數(shù)1和人數(shù)2相加等于總數(shù)列,并寫入到一個新的excel文件中去.

1).讀取'data.xlsx'中sheet1的數(shù)據(jù)

import xlrd

import os

file_name='data.xlsx'

excel_file=os.getcwd()+'\'+file_name

rdata=xlrd.open_workbook(excel_file)

sh1=rdata.sheet_by_index(0)

2).創(chuàng)建一個wbook對象,生成一個新的sheet

import xlwt

wbook=xlwt.Workbook()

wsheet=wbook.add_sheet(sh1.name)

3).在寫入第一行,標題欄

wsheet這個函數(shù)(row,col,value,style),這個style其實就是這個內容單元格的格式

style=xlwt.easyxf('align: vertical center, horizontal center')

wsheet.write(0,0,u'時間',style)

wsheet.write(0,1,u'人數(shù)1',style)

wsheet.write(0,2,u'人數(shù)2',style)

wsheet.write(0,3,u'總分',style)

4).寫入時間列的數(shù)據(jù),需要轉化數(shù)據(jù)格式

上面讀表格的時候,我們遺留了一個問題,就是第一列的日期

為啥打印出來,會變成奇怪的數(shù)據(jù)

其實那個是xldate對象,我們需要把sheet1里面的內容提取處理,然后轉成日期數(shù)

?

5).計算第二列和第三列的數(shù)據(jù),得到總分

?

6).把sheet1里面的第二列,第三列和總分的數(shù)據(jù)寫入excel文件

?

7).寫成文件new_data.xls

try:

wbook.save('new_data.xls')

except Exception as e:

print e

else:

print 'write excel file successful

運行一下,打開新的表格new_data.xls

?

寫在后面

不知道大家看了文章會不會操作了呢?

《新程序員》:云原生和全面數(shù)字化實踐50位技術專家共同創(chuàng)作,文字、視頻、音頻交互閱讀

總結

以上是生活随笔為你收集整理的python如何处理表格_Python是如何处理Excel表格的?方法简单!的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 欧美 丝袜 自拍 制服 另类 | 91精产国品| 午夜秋霞影院 | 清冷男神被c的合不拢腿男男 | 制服丝袜av在线播放 | 在线视频中文字幕 | 国产精品99久久久久久www | 国产一区二区片 | 日女人免费视频 | 人妻丝袜一区二区三区 | 国产精品人妖 | 肥老熟妇伦子伦456视频 | 冲田杏梨一区二区三区 | 福利视频一区二区 | 高清无码一区二区在线观看吞精 | 亚洲精品aⅴ中文字幕乱码 国产精品调教视频 | 毛片毛片毛片毛片毛片毛片毛片 | 成年人在线视频免费观看 | 精品国产乱码久久久久久久 | 91啦中文 | 美国一区二区三区 | 强开小受嫩苞第一次免费视频 | 成人性生交大片免费看中文 | 国产福利一区二区三区在线观看 | 五月丁香花 | 德国艳星videos极品hd | 在线视频日韩欧美 | 水密桃av | av影院在线播放 | 日本人妻丰满熟妇久久久久久 | 午夜中文字幕 | 四虎成人永久免费视频 | 最新国产露脸在线观看 | 欧美在线www | 色黄视频在线观看 | 91免费网站在线观看 | 少妇高潮一区二区三区99欧美 | 91操操| 91嫩草视频在线观看 | 成人看片网| 日日摸日日操 | 国产人妻人伦精品1国产丝袜 | 6699av| 国产农村妇女精品一区二区 | 在线免费观看一区二区三区 | 成年人在线观看视频免费 | 成人网在线播放 | 一本久草| 蜜桃av成人永久免费 | 正在播放av | 麻豆视频网站在线观看 | 日韩一区二区三区在线播放 | 亚洲精品一线二线三线 | 国产毛片久久久 | 日韩熟妇一区二区三区 | 91丨porny丨国产入口 | 校园春色欧美 | 成人国产毛片 | 久久国产精品99久久人人澡 | 天堂视频中文在线 | 国产精品热| 成人无码av片在线观看 | 在线高清观看免费 | 一区二区在线精品 | 中国在线观看免费视频 | 日韩免费av在线 | 久久一道本 | 美女在线一区 | 亚洲成人av一区二区三区 | 黄色三级在线观看 | av色先锋 | 一本视频在线 | 成年人黄国产 | 日本亚洲一区二区 | 日韩国产三级 | 中文字幕乱码人妻无码久久 | 亚洲少妇色| japanese在线| 狠狠艹av| 国产女人18毛片水真多 | 日韩乱淫| 久久亚洲精品无码va白人极品 | 在线观看国产视频 | a在线看 | 国产精品扒开腿做爽爽爽a片唱戏 | 性做久久久久久久久 | 有码一区| 天天色天天看 | 少女国产免费观看 | 免费av大片| 美女激情网 | 国产免费内射又粗又爽密桃视频 | 欧美日韩在线成人 | 免费黄色小网站 | 欧美中出| 天天综合亚洲 | 国产精品一区二区无码免费看片 | 免费福利av | 天天天天色 |