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

歡迎訪問 生活随笔!

生活随笔

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

python

python3打开excel_python3操作Excel (一)

發布時間:2024/8/23 python 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python3打开excel_python3操作Excel (一) 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

安裝:

pip install openpyxl

excel表中有圖像,需要安裝pillow庫。

pip install Pillow

代碼:

from openpyxl import Workbook

wb = Workbook()

# grab the active worksheet

ws = wb.active

# Data can be assigned directly to cells

ws[‘A1‘] = 42

# Rows can also be appended

ws.append([1, 2, 3])

# Python types will automatically be converted

import datetime

ws[‘A2‘] = datetime.datetime.now()

# Save the file

wb.save("sample.xlsx")

openpyxl模塊使用:

創建一個工作簿:

from openpyxl import Workbook

wb = Workbook()

工作簿最少有一個工作表:

openpyxl.workbook.Workbook.active()

ws = wb.active

wb的_active_sheet_index 屬性,默認情況下為0.來獲取第一個工作表。

修改值之后,可以獲取該值對應的工作表。

也可以創建一個新的工作表,需要使用openpyxl.workbook.Workbook.create_sheet() method

// 添加一個新的工作表:

#在默認工作表后面創建一個新的工作表。

ws1 = wb.create_sheet("twosheet")

#在默認工作表前面創建一個新的工作表。0 為索引值。

ws2 = wb.create_sheet(‘onesheet‘,0)

在創建工作表時,默認自動命名sheet1,sheet2,...

可使用title屬性更改sheet1,sheet2,....等名稱。

例如:

ws1.title = "2sheet"

默認情況下,title的背景顏色為白色,可更改為:

可以將此提供RRGGBB顏色代碼更改為sheet_properties.tabColor屬性: 該效果我沒有做出來,有待研究。

ws.sheet_properties.tabColor = "1072BA"

你可以把一個創建之后的工作表的名字,作為工作簿的一個鍵。

ws3 = wb[‘onesheet‘]

print(ws3)

輸出值為:

說明你可以選擇使用哪個工作表來寫入數據。

查看工作簿的所有工作表的名稱:

openpyxl.workbook.Workbook.sheetnames() property

print(wb.sheetnames) #打印出來為list。

可以選擇循環瀏覽工作表名稱:

for sheet in wb:

print(type(sheet.title))

print(sheet.title)

#打印出來為str.

可以在單個工作簿中創建工作表副本:

openpyxl.workbook.Workbook.copy_worksheet() method:

source = wb.active

target = wb.copy_worksheet(source)

#默認將工作表添加到末尾。

注意:

只有單元格(包括值,樣式,超鏈接和注釋)和某些工作表屬性(包括尺寸,格式和屬性)被復制。所有其他工作簿/工作表屬性不會被復制 - 例如圖片,圖表。

您不能在工作簿之間復制工作表。如果工作簿以只讀或只寫模式打開,您也無法復制工作表。

####插入數據

訪問單元格并修改單元格內容:

單元格可以作為工作表的鍵直接訪問。

ws = wb[‘Sheet‘]

print(ws)

注意:

訪問之前,必須先讓其工作在Sheet工作表上。

c = ws[‘A4‘]

print(c)

這將返回A4處的單元格或創建一個,如果它尚不存在。值可以直接分配:

ws[‘A4‘] = 4

還有

openpyxl.worksheet.Worksheet.cell() method.

這使用行和列表示法提供對單元格的訪問權限:

d = ws.cell(row=4,column=2,value=10)

print(type(d))

print(d)

注意:

當工作表在內存中創建時,它不包含單元格。它們在第一次訪問時創建。

由于這個特性,即使沒有為它們賦值,通過滾動單元格而不是直接訪問它們也會在內存中創建它們。

for i in range(1,101):

for j in range(1,101):

ws.cell(row=i,column=j)

print(type(j))

print(j)

#將在內存中創建100x100的單元格,無需任何操作。

可以使用切片訪問單元格的范圍:

cell_range = ws[‘A1‘:‘C2‘]

print(type(cell_range))

print(cell_range)

#type is tuple.

行或列的范圍可以類似地獲得:

colC = ws[‘C‘]

col_range = ws[‘C:D‘]

row10 = ws[10]

row_range = ws[5:10]

也可以用:

openpyxl.worksheet.Worksheet.iter_rows() method:

for row in ws.iter_rows(min_row=1,max_col=3,max_row=2):

for cell in row:

print(cell)

openpyxl.worksheet.Worksheet.iter_cols()

method will return columns:

for col in ws.iter_rows(min_row=1,max_col=3,max_row=2):

for cell in col:

print(cell)

需要遍歷文件的所有行或列,使用

openpyxl.worksheet.Worksheet.rows() property:

#遍歷文件的所有行

ws = wb.active

ws[‘C9‘] = ‘li yuan jie‘

print(tuple(ws.rows))

or use

openpyxl.worksheet.Worksheet.columns() property:

#遍歷文件的所有列:

ws = wb.active

ws[‘C9‘] = ‘li yuan jie‘

print(tuple(ws.columns))

#####Data storage

openpyxl.cell.Cell, we can assign it a value:

c = ws[‘A1‘] #指定A1單元格

c.value = ‘li yuan jie‘

print(c.value)

d = ws[‘B1‘]

d.value = 3.14

print(d.value)

也可以啟用類型和格式推斷:

c = ws[‘A2‘]

c.value = ‘12%‘

print(type(c.value)) #type is str

print(c.value)

import datetime

d = ws[‘B2‘]

d.value = datetime.datetime.now()

print(type(d.value)) #type is ‘datetime.datetime‘

print(d.value)

c.value = ‘31.50‘

print(type(c.value)) #type is str

print(c.value)

Saving to a file

The simplest and safest way to save a workbook is by using the:

openpyxl.workbook.Workbook.save() method of the openpyxl.workbook.Workbook object:

wb = Workbook()

wb.save(‘onepyxl.xlsx‘)

注意: 此操作將覆蓋現有文件。

可以指定屬性template = True,將工作簿保存為模板:

wb = load_workbook(‘document.xlsx‘)

wb.template = True

wb.save(‘document_template.xltx‘)

或將此屬性設置為False(默認),以另存為文檔:

wb = load_workbook(‘document_template.xltx‘)

wb.template = False

wb.save(‘document.xlsx‘, as_template=False)

注意: excel表的數據屬性和擴展名。

####加載一個文件

導入

openpyxl.load_workbook() to open an existing workbook:

from openpyxl import load_workbook

wb2 = load_workbook(‘onepyxl.xlsx‘)

print(wb2.sheetnames)

如有不足之處,請指正。

總結

以上是生活随笔為你收集整理的python3打开excel_python3操作Excel (一)的全部內容,希望文章能夠幫你解決所遇到的問題。

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