使用xlwt 和xlrd 进行写入Excel 操作

个人使用随笔

1.数组按奇偶进行分组
2.对数组进行去头,去尾处理
3.对数组进行二维求平均值

import xlwt
import xlrd
from xlutils.copy import copy
import osa = ['2', '1', '1', '8', 'r']
b = ['2', '9', '9', '1', "w"]
c = ['9', '5', '5', '1', "r"]
d = ['5', '8', '1', '1', "w"]
e = ['5', '9', '1', '1', "r"]
f = ['5', '8', '1', '1', "w"]
g = ['9', '2', '5', '1', "r"]
h = ['2', '7', '1', '8', "w"]
i = ['2', '3', '1', '8', "r"]
j = ['2', '6', '9', '1', "w"]
lists = [a, b, c, d, e, f, g, h, i, j]
result = ["0", "1", "2", "3", "4"]
header = ["", "tab1", "tab2", "tab3", "tab4"]BASE_PATH_3 = os.path.dirname(os.path.dirname(os.path.dirname(os.path.realpath(__file__))))  # BASE_PATH_2的上一级目录BASE_PATH_3BASE_PATH_2 = os.path.dirname(os.path.dirname(os.path.realpath(__file__)))  # BASE_PATH_1的上一级目录BASE_PATH_2BASE_PATH_1 = os.path.dirname(os.path.realpath(__file__))  # 获取当前文件目录BASE_PATH_1
os.chdir(BASE_PATH_1)
sheet_name = "上下滑数据详细信息"
save_path = BASE_PATH_1 + "/上下滑数据.xlsx"
new_list = []
result_1 = []
result_2 = []
listt = []
avg_1=[]
avg_2=[]class Data_processing:"""按次数的奇偶 分为两组"""def group_by(self,lists):time = 1for i in lists:time += 1if time % 2 == 1:result_1.append(i)else:result_2.append(i)return result_1,result_2# print(result_2)"""排序去除最大值和最小值"""def bubble_sort(self,results):x=lambda a:a[1]results.soft(key=x,reverse=True)del results[0]del results[-1]return results"""计算平均值"""def average(self, results, avg=None, new_list=None):if avg is None:avg = []if new_list is None:new_list = []for i in results:i_new = list(map(int, i[0:4]))new_list.append(i_new)for e in zip(*new_list):# print(e)ave = str(round(sum(e) / len(e), 2))avg.append(ave)return avgdef   data_processing(self,lists):result_1,result_2=self.group_by(lists)Excel().add_things(["第一个app"])for i in result_1:Excel().add_things(i)Excel().add_things(["第二个app"])for k in result_2:Excel().add_things( k)result_1_1=self.bubble_sort(result_1)result_2_2=self.bubble_sort(result_2)Excel().add_things(["第一个app最优数据"])for i in result_1_1:Excel().add_things(i)Excel().add_things(["第二个app最优数据"])for k in result_2_2:Excel().add_things(k)avg1_1=self.average(result_1)avg2_2 = self.average(result_2)Excel().add_things(["第一个app平均值"])Excel().add_things(avg1_1)Excel().add_things(["第二个app平均值"])Excel().add_things(avg2_2)class Excel:def make_excel(self, sheet_name, save_path):path_judge = os.path.exists(save_path)# 判断路径文件是否存在if path_judge == False:"用xlwt 创建Excel"self.work_book = xlwt.Workbook(encoding="utf-8")"创建sheet"self.work_book.add_sheet(sheet_name)"保存Excel"self.work_book.save(save_path)def add_things(self,result):"使用xlrd打开指定路径文件"self.work_book = xlrd.open_workbook(save_path)"获取Excel 的所有sheet 名称"self.all_sheet = self.work_book.sheet_names()"选择指定sheet"self.first_sheet = self.work_book.sheet_by_name(self.all_sheet[0])"复制新的Excel"self.new_workbook = copy(self.work_book)"获取新表的sheet"self.new_sheet = self.new_workbook.get_sheet(0)"获取sheet 已使用的行数"self.old_rows = self.first_sheet.nrows"获取sheeet 已使用的列数"self.old_col = self.first_sheet.ncols" 生成表头"self.set_head()"添加数据"self.add_data(result)"保存Excel"self.new_workbook.save(save_path)# print(self.old_rows, self.old_col)def set_head(self):"""列:col行:row""""判断是否已有表头"if self.old_rows == 0:for k in header:self.new_sheet.write(self.old_rows, self.old_col, k)self.old_col += 1def add_data(self,result):"需要使列数从头数起"'获取到的row是从1开始计数需要加判断,python是从0计数'self.old_rows_1 = self.first_sheet.nrowsif self.old_rows_1==0col = 0for i in result:self.new_sheet.write(self.old_rows_1+1, col, i)col += 1else:col = 0for i in result:self.new_sheet.write(self.old_rows_1+1, col, i)col += 1#
if __name__ == '__main__':Excel().make_excel(sheet_name, save_path)# Excel().add_things(header,result)Data_processing().data_processing(lists)

python 写入Excel相关推荐

  1. lisp对excel其他行列写入_【极简Python 自动化办公】Python写入Excel表格

    [极简Python 自动化办公]Python写入Excel表格 [极简Python 自动化办公]专栏是介绍如何利用python办公,减少工作负荷.篇幅精炼,内容易懂,无论是否有编程基础,都非常适合. ...

  2. Python写入Excel格式和颜色

    Python写入Excel有时需要合并单元格.或者改变文字内容的颜色 首先导入xlwt模块 import xlwt 创建文件名 创建Excel工作簿对象 创建工作表 创建样式字体红色 filename ...

  3. python写入excel数据教程_python 将数据写入excel

    摘要链接: python第三方库--xlrd和xlwt操作Excel文件学习 :http://blog.csdn.net/wangkai_123456/article/details/50457284 ...

  4. python 写入excel 日期_详解:Python实现大数据收集至excel的思路大牛分享(建议收藏)...

    一.在工程目录中新建一个excel文件 二.使用python脚本程序将目标excel文件中的列头写入,本文省略该部分的code展示,可自行网上查询 三.以下code内容为:实现从接口获取到的数据值写入 ...

  5. python 写入excel数据xlwt_用python包xlwt将数据写入Excel中

    一般用两种格式的数据写入,不多说放上demo. 1.列表形式写入 import xlwt def data_write(file_path, datas): f = xlwt.Workbook() s ...

  6. python写入excel文件追加写入_Python读写/追加excel文件Demo

    这篇文章主要介绍了关于Python读写/追加excel文件Demo,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下 python操作excel的三个工具包如下,注意,只能操作.xls,不 ...

  7. python写入excel文件保存在哪里_万字长文记录Python读写EXCEL文件常用方法大全

    python读写excel的方式有很多,不同的模块在读写的讲法上稍有区别,这里我主要介绍几个常用的方式. 用xlrd和xlwt进行excel读写; 用openpyxl进行excel读写; 用panda ...

  8. python 写入excel数字格式,怎么在Python中写入Excel的格式

    怎么在Python中写入Excel的格式 发布时间:2021-03-12 17:02:25 来源:亿速云 阅读:77 作者:Leah 这期内容当中小编将会给大家带来有关怎么在Python中写入Exce ...

  9. Python 写入excel时的字体格式设置

    上一篇时候用Python自动帮我汇总数据,并保留原excel格式,但是写入时,我们的格式怎么设置呢,怎么样才能让表格自动做成我想要的模式,我主要是通过Python和excel宏来实现的,先写怎么用Py ...

  10. python写入excel表格_Python读取写入Excel表格

    原博文 2019-08-27 15:35 − Python操作Excel,主要用到xlrd和xlwt这两个库,即xlrd是读Excel,xlwt是写Excel的库 1.Python读取Excel表格 ...

最新文章

  1. d3.js--04(enter和exit)
  2. ubuntu终端快捷键
  3. UI基础篇-iOS中简单图片浏览器的实现
  4. MSTP技术支撑大客户专线——Vecloud
  5. instanceof 是什么意思
  6. 深入理解JavaScript系列(5):强大的原型和原型链
  7. ftp模式 503、227错误
  8. ERROR: Unrecognized command line argument: #39;use#39;
  9. 02 前端篇(选择器和属性)
  10. html5与其他语言的优势,浅谈:html5和html的区别
  11. 基于J2EE的门诊挂号收费系统设计与实现.rar(毕业论文+程序源码+数据库文件)
  12. uniapp内使用 mescroll
  13. CPU超频全方位攻略
  14. 爱快可迅速普及家庭专线?
  15. 产品三维模型在线展示
  16. Python——> 一二维数据的格式化和处理
  17. 微型计算机的发展经历了哪几个,计算机的小故事有哪些_计算机发展史小故事...
  18. 【信息汇总】重庆理工大学计算机考研
  19. C++智能指针unique_ptr与shared_ptr
  20. 【网络工程师】<软考中级>无线通信网

热门文章

  1. 小蜜蜂吉他谱 高八度和低八度
  2. 达索系统基于3DEXPERIENCE平台开发工具介绍
  3. 亚马逊AWS云服务器 ubuntu系统登陆教程
  4. java处理excel,将xlsx转xls
  5. MSP430 TTP229 单片机 触摸按键 实践 51单片机 触摸键盘
  6. catgroup linux_linux中/etc/group文件详解
  7. java Swing TXT文件分割程序
  8. 荣耀4a android art,荣耀4A黑科技大揭秘,真是给工程师给跪了!!
  9. Photoshop入门学习
  10. rand、randn和randi的区别