python讀寫excel表操作

casainurbania發表於2020-11-03

安裝xlrd模組

pip install xlrd或者去官網下載

使用

讀取檔案

file = xlrd.open_workbook("./sample.xlsx")

此時file是整個檔案物件,獲取某個工作表可以用序號或者表名

  • 序號獲取
sheet0 = file.sheet_by_index(0)
sheet1 = file.sheet_by_index(1)
  • 表名基本資訊

在這裡插入圖片描述

sheet_1 = file.sheet_by_name("Sheet1")

print("表名:\t" ,sheet_1.name)
print("錶行數:\t",sheet_1.nrows)
print("表列數:\t",sheet_1.ncols)

表名: Sheet1
錶行數: 4
表列數: 3

讀取某個單元格內容

row = 1
col = 2

print("第{}行 第{}列: {}".format(row, col,  sheet_1.cell(row, col)))
print("第{}行 第{}列: {}".format(row, col,  sheet_1.cell_value(row, col)))

第1行 第2列: number:34.0
第1行 第2列: 34.0

獲取行,列




# 獲取第2列
print(sheet_1.col(1))
print(sheet_1.col_values(1))
# 獲取第2列的第2行到第3行
print(sheet_1.col_values(1, start_rowx=1, end_rowx=3))


# 獲取第3行
print(sheet_1.row(3))
print(sheet_1.row_values(3))

[text:‘NAME’, text:‘Jack’, text:‘Jessy’, text:‘Kate’]
[‘NAME’, ‘Jack’, ‘Jessy’, ‘Kate’]
[‘Jack’, ‘Jessy’]
[number:3.0, text:‘Kate’, number:22.0]
[3.0, ‘Kate’, 22.0]

# 遍歷所有內容

for i in range(sheet_1.nrows):
    print(sheet_1.row_values(i))

[’’, ‘NAME’, ‘AGE’]
[1.0, ‘Jack’, 34.0]
[2.0, ‘Jessy’, 31.0]
[3.0, ‘Kate’, 22.0]

列印某單元格內容

#列印B1單元格內容
cell_B1 = sheet_1.cell(1, 1).value
print(cell_B1)

NAME

寫單元格

row = 0
col = 0

# 型別 0 empty,1 string, 2 number, 3 date, 4 boolean, 5 error
ctype = 1

value = '新的內容'
# 擴充套件的格式化
xf = 0
sheet_1.put_cell(row, col, ctype, value, xf)

for i in range(sheet_1.nrows):
    print(sheet_1.row_values(i))

[‘新的內容’, ‘NAME’, ‘AGE’]
[1.0, ‘Jack’, 34.0]
[2.0, ‘Jessy’, 31.0]
[3.0, ‘Kate’, 22.0]

相關文章