python操xls
import xlrdfrom xlutils.copy import copyclass OperationExcel:def __init__(self, file_name=None, sheet_id=None):"""构造函数,调用方法的时候。就要知道excel地址,和响应的sheed_id。也就是调用这个函数的时候就要知道,想要操作...
·
import xlrd
from xlutils.copy import copy
class OperationExcel:
def __init__(self, file_name=None, sheet_id=None):
"""
构造函数,调用方法的时候。就要知道excel地址,和响应的sheed_id。也就是调用这个函数的时候就要知道,想要操作的数据在哪里
:param file_name: excel的文件路径,可以默认存在一个地方
:param sheet_id: sheet,第一个是0.依次向下
"""
if file_name:
self.file_name = file_name # 传的话就是用传的地址
self.sheet_id = sheet_id
else:
self.file_name = r'D:\p22naf\util\stu_1.xls' # 不传的话就用给定的地址
self.sheet_id = 0 # 0是第一个sheet
self.data = self.get_data() #self.data就会excel里面内容的一个对象
# 获取某一页sheet对象
def get_data(self):
data = xlrd.open_workbook(self.file_name)
tables = data.sheets()[self.sheet_id]
return tables
# if __name__ == '__main__':
# opers = OperationExcel()
# print(opers.get_data().nrows)
# 获取单元格的行数
def get_lines(self):
tables = self.data
return tables.nrows
#结果是5行
# 获取某一个单元格的内容
def get_cell_value(self, row, col): #如:传入0 1,就是年龄。row是行,col是列。都是从0开始
return self.data.cell_value(row, col)
# 写入数据 如下:传入的数据是5,4,100 调用的时候,EXcel不能是打开状态
def write_value(self, row, col, value):
'''
写入excel数据
row,col,value
'''
read_data = xlrd.open_workbook(self.file_name)
write_data = copy(read_data)
sheet_data = write_data.get_sheet(0)
sheet_data.write(row, col, value)
write_data.save(self.file_name)
# 根据对应的caseid 找到对应行的内容
# def get_rows_data(self, case_id):
# row_num = self.get_row_num(case_id)
# rows_data = self.get_row_values(row_num)
# return rows_data
#
# # 根据对应的caseid找到对应的行号
# def get_row_num(self, case_id):
# num = 0
# clols_data = self.get_cols_data()
# for col_data in clols_data:
# if case_id in col_data:
# return num
# num = num + 1
# if __name__ == '__main__':
# opers = OperationExcel()
# print(opers.get_row_num("mary3"))
#结果:3
# 根据行号,找到该行的内容
def get_row_values(self, row):
tables = self.data
row_data = tables.row_values(row)
return row_data
# 获取某一列的内容
def get_cols_data(self, col_id=None):
if col_id != None:
cols = self.data.col_values(col_id)
else:
cols = self.data.col_values(0)
return cols
if __name__ == '__main__':
opers = OperationExcel()
print(opers.get_row_num("mary1"))

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。
更多推荐
所有评论(0)