文章目錄
-
- 一、我的需求
- 二、代碼
- 三、總結
很多人學習python,不知道從何學起,
很多人學習python,掌握了基本語法過后,不知道在哪里尋找案例上手,
很多已經做案例的人,卻不知道如何去學習更加高深的知識,
那么針對這三類人,我給大家提供一個好的學習平臺,免費領取視頻教程,電子書籍,以及課程的源代碼!
QQ群:961562169
一、我的需求
我想要excel 的最后1列由串列形式轉換為數值型別

?
可以看到最后一列有的是串列,有的直接是數值,想要整個串列中的內容都轉為數值型別
二、代碼
import openpyxl
def write_excel_xlsx():
# 寫入資料準備
workbook = openpyxl.Workbook()
sheet = workbook.active
sheet.title = "優化后的引數"
# 記錄寫的行數
write_row = 0
# 首先從excel中讀取資料
work_read = openpyxl.load_workbook("樣本優化.xlsx")
sheet_read = work_read["優化后的引數"]
# 將表中的所有行轉換為串列
rows_data = list(sheet_read.rows)
# 逐行讀取
for row in rows_data:
for i in range(len(row)):
value = row[i].value
if isinstance(value, str):
sheet.cell(row=write_row + 1, column=i + 1, value=str(value[1:len(value) - 1]))
else:
sheet.cell(row=write_row + 1, column=i + 1, value=str(value))
write_row = write_row + 1
workbook.save("樣本優化-處理.xlsx")
print("xlsx格式表格寫入資料成功!")
write_excel_xlsx()
三、總結
- 將表中的所有行轉換為串列
# 將表中的所有行轉換為串列
rows_data = https://www.cnblogs.com/41280a/p/list(sheet_read.rows)
這一步挺重要,因為后面我們對具體的列數操作,這樣轉換更方便
- 那個串列在excel中是字串的形式,所以需要對其單獨進行判斷
if isinstance(value, str):
sheet.cell(row=write_row + 1, column=i + 1, value=https://www.cnblogs.com/41280a/p/str(value[1:len(value) - 1]))
else:
sheet.cell(row=write_row + 1, column=i + 1, value=str(value))
- 對這個行數需要注意,處理完一行需要對其遞增
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/119912.html
標籤:Python
