導航:首頁 > 文件處理 > python打開文件夾中的excel

python打開文件夾中的excel

發布時間:2024-03-15 16:24:43

python中怎麼打開excel

讀excel要用到xlrd模塊,官網安裝(http://pypi.python.org/pypi/xlrd)。然後就可以跟著裡面的例子稍微試一下就知道怎麼用了。大概的流程是這樣的:
1、導入模塊
import
xlrd
2、打開excel文件讀取數據
data
=
xlrd.open_workbook('excel.xls')
3、獲取一個工作表

table
=
data.sheets()[0]
#通過索引順序獲取

table
=
data.sheet_by_index(0)
#通過索引順序獲取

table
=
data.sheet_by_name(u'sheet1')#通過名稱獲取
4、獲取整行和整列的值(返回數組)
table.row_values(i)
table.col_values(i)
5、獲取行數和列數
table.nrows
table.ncols
6、獲取單元格
table.cell(0,0).value
table.cell(2,3).value
就我自己使用的時候覺得還是獲取cell最有用,這就相當於是給了你一個二維數組,餘下你就可以想怎麼干就怎麼幹了。得益於這個十分好用的庫代碼很是簡潔。但是還是有若干坑的存在導致話了一定時間探索。現在列出來供後人參考吧:
1、首先就是我的統計是根據姓名統計各個表中的信息的,但是調試發現不同的表中各個名字貌似不能夠匹配,開始懷疑過編碼問題,不過後來發現是因為空格。因為在excel中輸入的時候很可能會順手在一些名字後面加上幾個空格或是tab鍵,這樣看起來沒什麼差別,但是程序處理的時候這就是兩個完全不同的串了。我的解決方法是給每個獲取的字元串都加上strip()處理一下。效果良好
2、還是字元串的匹配,在判斷某個單元格中的字元串(中文)是否等於我所給出的的時候發現無法匹配,並且各種unicode也不太奏效,網路過一些解決方案,但是都比較復雜或是沒用。最後我採用了一個比較變通的方式:直接從excel中獲取我想要的值再進行比較,效果是不錯就是通用行不太好,個呢不能問題還沒解決。
二、寫excel表
寫excel表要用到xlwt模塊,官網下載(http://pypi.python.org/pypi/xlwt)。大致使用流程如下:
1、導入模塊
復制代碼代碼如下:
import
xlwt
2、創建workbook(其實就是excel,後來保存一下就行)
復制代碼代碼如下:
workbook
=
xlwt.workbook(encoding
=
'ascii')
3、創建表
復制代碼代碼如下:
worksheet
=
workbook.add_sheet('my
worksheet')
4、往單元格內寫入內容
復制代碼代碼如下:
worksheet.write(0,
0,
label
=
'row
0,
column
0
value')
5、保存
復制代碼代碼如下:
workbook.save('excel_workbook.xls')

⑵ python對excel操作

Python對於Excel的操作是多種多樣的,掌握了相關用法就可以隨心所欲的操作數據了!

操作xls文件

xlrd(讀操作):

import xlrd

1、引入xlrd模塊

workbook=xlrd.open_workbook("36.xls")

2、打開[36.xls]文件,獲取excel文件的workbook(工作簿)對象

names=workbook.sheet_names()

3、獲取所有sheet的名字

worksheet=workbook.sheet_by_index(0)

4、通過sheet索引獲得sheet對象

worksheet為excel表第一個sheet表的實例化對象

worksheet=workbook.sheet_by_name("各省市")

5、通過sheet名獲得sheet對象

worksheet為excel表sheet名為【各省市】的實例化對象

nrows=worksheet.nrows

6、獲取該表的總行數

ncols=worksheet.ncols

7、獲取該表的總列數

row_data=worksheet.row_values(n)

8、獲取該表第n行的內容

col_data=worksheet.col_values(n)

9、獲取該表第n列的內容

cell_value=worksheet.cell_value(i,j)

10、獲取該表第i行第j列的單元格內容

xlwt(寫操作):

import xlwt

1、引入xlwt模塊

book=xlwt.Workbook(encoding="utf-8")

2、創建一個Workbook對象,相當於創建了一個Excel文件

sheet = book.add_sheet('test')

3、創建一個sheet對象,一個sheet對象對應Excel文件中的一張表格。

sheet.write(i, j, '各省市')

4、向sheet表的第i行第j列,寫入'各省市'

book.save('Data\\36.xls')

5、保存為Data目錄下【36.xls】文件

操作xlsx文件

openpyxl(讀操作):

import openpyxl

1、引入openpyxl模塊

workbook=openpyxl.load_workbook("36.xlsx")

2、打開[36.xlsx]文件,獲取excel文件的workbook(工作簿)對象

names=workbook.sheetnames

worksheet=workbook.worksheets[0]

worksheet=workbook["各省市"]

ws = workbook.active

6、獲取當前活躍的worksheet,默認就是第一個worksheet

nrows=worksheet.max_row

7、獲取該表的總行數

ncols=worksheet.max_column

8、獲取該表的總列數

content_A1= worksheet['A1'].value

9、獲取該表A1單元格的內容

content_A1=worksheet.cell(row=1,column=1).value

10、獲取該表第1列第1列的內容

openpyxl(寫操作):

workbook=openpyxl.Workbook()worksheet = workbook.active

3、獲取當前活躍的worksheet,默認就是第一個worksheet

worksheet.title="test"

4、worksheet的名稱設置為"test"

worksheet = workbook.create_sheet()

5、創建一個新的sheet表,默認插在工作簿末尾

worksheet.cell(i,j,'空')

6、第i行第j列的值改成'空'

worksheet["B2"]="空"

7、將B2的值改成'空'

worksheet.insert_cols(1)

8、在第一列之前插入一列

worksheet.append(["新增","台灣省"])

9、添加行

workbook.save("Data\\36.xlsx")

10、保存為Data目錄下【36.xlsx】文件

pandas處理excel文件

pandas操作:

import pandas as pd

1、引入pandas模塊

data = pd.read_excel('36.xls')

2、讀取[36.xls]或者[36.xlsx]文件

data = pd.read_csv('36.csv')

3、讀取[36.csv]文件

data=data.dropna(subset=['店鋪'])

4、過濾掉data店鋪列有缺失的數據

data.sort_values("客戶網名", inplace=True)

5、將data數據按照客戶網名列進行從小到大排序

data = pd.read_csv(36.csv, skiprows = [0,1,2],sep = None, skipfooter = 4)

6、讀取[36.csv]文件,前三行和後四行的數據略過

data = data.fillna('空')

7、將data中的空白處填充成'空'

data.drop_plicates('訂單','first',inplace=True)

8、data中的數據,按照【訂單】列做去重處理,保留第一條數據

data=pd.DataFrame(data,columns=['訂單','倉庫'])

9、只保留data中【訂單】【倉庫】列的數據

data = data[(data[u'展現量'] > 0)]

10、只保留【展現量】列中大於0的數據

data= data[data["訂單"].str.contains('000')]

11、只保留【訂單】列中包含'000'的數據

data= data[data["倉庫"]=='正品倉']

12、只保留【倉庫】列是'正品倉'的數據

xs= data[data["店鋪"]=='南極人']['銷售額']

13、獲取店鋪是南極人的銷售額數據

data['訂單'] = data['訂單'].str[3:7]

14、【訂單】列的值只保留4-8個位元組的值

data["郵資"] = np.where((data['店鋪'].str.contains('T|t')) & -(data['倉庫'] == '代發倉'), 8, data['郵資'])

15、滿足店鋪列包含 T 或 t 並且倉庫不等於'代發倉'的話,將郵資的值改成8,否則值不變

data = np.array(data).tolist()

16、將data從DataFrame轉換成列表

data=pd.DataFrame(data)

17、將列表轉換成DataFrame格式

zhan = data[u'展現'].sum().round(2)

18、將data中所有展現列數據求和,並取兩位小數

sum=data.groupby(['店鋪'])['刷單'].sum()

19、將data中按照店鋪對刷單進行求和

counts=data['店鋪'].value_counts()

20、將data按照店鋪進行計算

avg=data.groupby(['店鋪'])['刷單'].mean()

21、將data按照店鋪對刷單進行求平均數

count = pd.concat([counts,sum], axis=1, ignore_index=True, sort=True)

22、將counts和sum兩個DataFrame進行了組合

count=count.rename(index=str, columns={0: "訂單", 1: "成本"})

23、將新生成的DataFrame列名進行修改

data = pd.merge(sum, counts, how='left', left_on='店鋪', right_on='店鋪')

24、將列表轉換成DataFrame格式

from openpyxl import Workbook 

wb=Workbook()  

ws1=wb.active 

data.to_excel('36.xlsx') 

wb.close()

25、data完整的寫入到關閉過程,執行此操作的時候【36.xlsx】不能是打開狀態

excel格式操作

樣式處理:

1、打開【36.xlsx】

sheet=workbook.worksheets[0]

2、將第一個sheet對象賦值給sheet

sheet.column_dimensions['A'].width = 20.0

3、將A列的寬度設置為20

sheet.row_dismensions[1].height = 20.0

4、將第一行的行高設置為20

sheet.merge_cells('A1:A2')

5、將sheet表A1和A2單元格合並

sheet.unmerge_cells('A1:A2')

6、將sheet表A1和A2單元格取消合並

sheet.insert_rows(2,2)

7、將sheet表從第2行插入2行

sheet.insert_cols(3,2)

8、將sheet表從第3列插入2列

sheet.delete_rows(2)

9、刪除第2行

sheet.delete_cols(3, 2)

10、將sheet表從第3列開始刪除2列

from openpyxl.styles import Font, Border, PatternFill, colors, Alignment

11、分別引入字體、邊框、圖案填充、顏色、對齊方式

sheet.cell(i,j).font = Font(name='Times New Roman', size=14, bold=True, color=colors.WHITE)

12、設置sheet表第 i 行第 j 列的字體

sheet.cell(i,j).alignment = Alignment(horizontal='center', vertical='center')

13、設置sheet表第 i 行第 j 列的字體對齊方式

left, right, top, bottom = [Side(style='thin', color='000000')] * 4sheet.cell(i,j).border = Border(left=left, right=right, top=top, bottom=bottom)

14、引入邊框樣式並調用

fill = PatternFill("solid", fgColor="1874CD")sheet.cell(1,j).fill = fill

15、引入填充樣式,並調用

import xlrd

from openpyxl import Workbook

from openpyxl import load_workbook

workbook=load_workbook(filename='C:/Users/EDZ/Desktop/工作/2021.08.03/大兄弟.xlsx')

sheet=workbook.active

sheet.insert_cols(idx=1)

sheet.merge_cells(A1:A3)

sheet['A1']=['上海','山東','浙江']

⑶ python怎麼打開excel文件並處理

Python,想要打開excel文件,並處理這個,你可以直接在開始選項里邊打開EXO鍵就可了

⑷ 如何用python遍歷文件夾下的所有excel文件

大數據處理經常要用到一堆表格,然後需要把數據導入一個list中進行各種演算法分析,簡單講一下自己的做法:

1.如何讀取excel文件

網上的版本很多,在xlrd模塊基礎上,找到一些源碼

[python]view plain

⑸ 如何用python讀excel文件

想要使用python實現對Excel文件的讀寫,首先需要安裝專用的模塊(如果你是大牛可以自己編寫)xlrd模塊。

解壓以後啟動cmd命令窗口,在其中輸入xlrd解壓後所在的目錄,執行安裝命令如圖所示(cmd命令的使用請自行網路,本機已經配置好了python環境才可以正常安裝)

在IDE環境中導入使用對應的xlrd模塊,以eclipse環境為例如圖所示
impot xlrd即可

打開Excel文件讀取數據的簡單示例如圖所示:
import xlrd後
(最新的xlrd 0.9.4版本跨平台同時支持.xls和.xlsx)

新手們在使用時會遇到:OSError: Invalid argument:XXX錯誤,這是文件I/O錯誤。在windows中要使用正斜杠 (對:C:/bbbb.xlsx,錯:('C:\bbbb.xlsx')

6
使用xlrd模塊簡單讀取excel中的sheet和行、列數據。
sheets()[i],row_values(i),col_values(i)

⑹ 如何用python讀取excel文件

1.首先說明我是使用的python3.5,我的office版本是2010,首先打開dos命令窗,安裝必須的兩個庫,命令是:

pip3 install xlrd

Pip3 install xlwt

2.准備好excel,例如我的一個工作文件,我放在D盤/網路經驗/11.xlsx,只有一個頁簽A,內容是一些銷售數據

3.打開pycharm,新建一個excel.py的文件,首先導入支持庫

import xlrdimport xlwt

4.針對剛入門的新手,先介紹三個知識,第一個:獲取excel的sheet名稱,第二:獲取excel行數與列數,第三:獲取第幾行第幾列的具體值,這是最常用的三個知識點

5.貼出代碼,具體分析:

(1)要操作excel,首先得打開excel,使用open_workbook(‘路徑’)

(2)要獲取行與列,使用nrows(行),ncols(列)

(3)獲取具體的值,使用cell(row,col).value

workbook=xlrd.open_workbook(r'E:11.xlsx')print (workbook.sheet_names()) sheet2=workbook.sheet_by_name('A') nrows=sheet2.nrows ncols=sheet2.ncols print(nrows,ncols) cell_A=sheet2.cell(1,1).value print(cell_A)

6.要在excel里寫入值,就要使用write屬性,重點說明寫入是用到xlwt這個支援庫,思路是先新建excel,然後新建頁簽B,然後將一組數據寫入到B,最後保存為excel.xls,這里建議保存為2003的格式,大部分電腦都能打開,特別注意保存的excel的路徑是在python工作文件的目錄下面,貼出代碼:

stus = [['年', '月'], ['2018', '10'], ['2017', '9'], ['2016', '8']]Excel = xlwt.Workbook() # 新建excelsheet = Excel.add_sheet('B') #新建頁簽Brow = 0for stu in stus: col = 0 for s in stu: sheet.write(row, col, s) #開始寫入 col = col + 1 row = row + 1Excel.save('Excel.xls') #保存

關於如何用python讀取excel文件,環球青藤小編就和大家分享到這里了,學習是永無止境的,學習一項技能更是受益終身,所以,只要肯努力學,什麼時候開始都不晚。如果您還想繼續了解關於python編程的學習方法及素材等內容,可以點擊本站其他文章學習。

閱讀全文

與python打開文件夾中的excel相關的資料

熱點內容
485和單片機 瀏覽:974
xp修復系統命令 瀏覽:519
微你app怎麼加好友 瀏覽:795
程序員轉正 瀏覽:208
應用隱私加密忘記密碼怎麼辦 瀏覽:683
2g視頻怎麼壓縮 瀏覽:609
康佳電視伺服器異常怎麼解決 瀏覽:840
怎麼用c語言編譯簡單的小游戲 瀏覽:814
伺服器如何以域用戶登錄 瀏覽:602
安卓os14怎麼默認桌面 瀏覽:551
應用市場下載在哪個文件夾 瀏覽:897
安卓上的谷歌地圖怎麼用 瀏覽:183
安卓命令行打包 瀏覽:518
編程文字與數字教學視頻 瀏覽:818
如何看手機號碼注冊哪些app 瀏覽:414
linux查看總內存 瀏覽:852
python進程間共享 瀏覽:439
js如何獲取本地伺服器地址 瀏覽:72
gfx什麼時候支持安卓十一系統 瀏覽:943
壓縮機90兆帕 瀏覽:932