引言

  • Python每日一练又开始啦,今天的专题和Excel有关,主要是实现将txt文本中数据写入到Excel中,说来也巧,今天刚好学校要更新各团支部的人员信息,就借此直接把事情做了
  • 主要对于三种数据类型处理,字典型,字符串,列表
  • 使用的库有xlwt,json,主要做的操作有文件读取,数据读取以及生成xls文件(保存xlsx,会打不开)

字典型数据

  • 实现分析:将文本文件读取,然后用json读取为标准形式数据,即易于人阅读和编写的数据,最后实例化一个xls,对其写入数据,生成文件
  • 代码实现:
# -*- coding:utf-8 -*-
# Author : Konmu
'''
纯文本文件 student.txt为学生信息, 里面的内容(包括花括号)如下所示: {
"1":["张三",150,120,100],
"2":["李四",90,99,95],
"3":["王五",60,66,68]
}
请将上述内容写到 student.xls 文件中
'''
import json
import xlwt f = open('C:/Users/xxx/Desktop/t.txt','r',encoding='utf-8')
content = f.read()
data = json.loads(content) #用于将str类型的数据转成dict work = xlwt.Workbook()#生成Workbook对象
Sheet_Student = work.add_sheet('student',cell_overwrite_ok=True)#创建sheet对象 '''
写入信息内容
'''
col = 0
row = 0 for k,v in data.items():
Sheet_Student.write(row,col,k)
for i,j in enumerate(v):
Sheet_Student.write(row,i+1,j)
row+=1
work.save('C:/Users/xxx/Desktop/信息统计.xls')
  • 测试效果:

字符型数据

  • 和上面这个比起来简单多了,就不赘述了
  • 代码示例:
# -*- coding:utf-8 -*-
# Author : Konmu
'''
纯文本文件 city.txt为城市信息, 里面的内容(包括花括号)如下所示: {
"1" : "上海",
"2" : "北京",
"3" : "成都"
}
请将上述内容写到 city.xls 文件中
'''
import json
import xlwt f = open('C:/Users/xxx/Desktop/city.txt','r',encoding='utf-8')
content = f.read()
data = json.loads(content) #用于将str类型的数据转成dict work = xlwt.Workbook()#生成Workbook对象
Sheet_Student = work.add_sheet('student',cell_overwrite_ok=True)#创建sheet对象 '''
写入信息内容
'''
col = 0
row = 0
for k,v in data.items():
Sheet_Student.write(row,col,k)
Sheet_Student.write(row,1,v)
row+=1
work.save('C:/Users/xxx/Desktop/city.xls')

列表型数据

  • 最简单的一个,大家想练习的话,可以先着手弄这个,题目给的时候是由难到易的
  • 代码示例:
# -*- coding:utf-8 -*-
# Author : Konmu
'''
纯文本文件 numbers.txt, 里面的内容(包括方括号)如下所示: [
[1, 82, 65535],
[20, 90, 13],
[26, 809, 1024]
]
'''
import json
import xlwt f = open('C:/Users/xxxx/Desktop/number.txt','r',encoding='utf-8')
content = f.read()
data = json.loads(content) #用于将str类型的数据转成dict work = xlwt.Workbook()#生成Workbook对象
Sheet_Student = work.add_sheet('student',cell_overwrite_ok=True)#创建sheet对象 '''
写入信息内容
'''
for row in range(len(data)):
for col in range(len(data[0])):
Sheet_Student.write(row,col,data[row][col]) work.save('C:/Users/xxxx/Desktop/number.xls')

结语

  • Excel在我们的日常中运用的还是很广泛的,能够快捷的对大量数据进行操作还是能帮我们节省很多的时间的,完结,撒花★,°:.☆( ̄▽ ̄)/$:.°★

Python 每日一练(5)的更多相关文章

  1. python每日一练:0007题

    第 0007 题: 有个目录,里面是你自己写过的程序,统计一下你写过多少行代码.包括空行和注释,但是要分别列出来. # -*- coding:utf-8 -*- import os def count ...

  2. [python每日一练]--0012:敏感词过滤 type2

    题目链接:https://github.com/Show-Me-the-Code/show-me-the-code代码github链接:https://github.com/wjsaya/python ...

  3. Python 每日一练 | Flask 实现半成品留言板

    留言板Flask实现 引言 看了几天网上的代码,终于写出来一个半成品的Flask的留言板项目,为什么说是半成品呢?因为没能实现留言板那种及时评论刷新的效果,可能还是在重定向上有问题 或者渲染写的存在问 ...

  4. Python 每日一练(4)

    引言 今天继续是python每日一练的几个专题,主要涵盖简单的敏感词识别以及图片爬虫 敏感词识别 这个敏感词的识别写的感觉比较简单,总的概括之后感觉功能可以简略成if filter_words in ...

  5. Python 每日一练(3)

    引言 今天的每日一练,学习了一下用Python生成四位的图像验证码,就是我们常常在登录时见到的那种(#`O′) 思路分析 正如常见的那种图像验证码,它是由数字和字母的随机组合产生的,所以我们首先的第一 ...

  6. Python每日一练(1)

    这两天在做Python的每日一练,感觉收获颇丰,所以来记录分享一下,一共做了三个,涉及socket,PIL,pymysql三个库,另外终于开始了Flask框架的学习,后续也会做出一些分析 第一个是一个 ...

  7. Python 每日一练(2)

    引言 我又双叒叕的来啦,新博客的第二篇文章,这次是继之前公众号上每日一练的第二个,这次是专题实对于文件的一些处理的练习 主要有以下几类: 1.实现英文文章字频统计 2.统一剪裁某一指定目录下的所有图片 ...

  8. Python每日一练(1):计算文件夹内各个文章中出现次数最多的单词

    #coding:utf-8 import os,re path = 'test' files = os.listdir(path) def count_word(words): dic = {} ma ...

  9. Python 每日一练(7)

    引言 今天的练习比较轻松,原本是有两题的,但是第一题那个大致看了一下,其实和之前的6个练习差不多,就是把xls中的文件数据读取出来后,进行一下处理,对于那题而言就是一个求和操作,所以就没练了,所以今天 ...

随机推荐

  1. USB设备驱动模型

    嵌入式设备驱动的编写,基本上都要按照一定的驱动模型编写.不这么做的话,一旦设备发生了更新和改变,大部分的驱动代码都要推倒重来,代码的重用率低,不具备移植性.所以在新版linux2.6.22以后的内核版 ...

  2. Jenkins 介绍

    持续集成: 持续集成是一种软件开发实践,即团队开发成员经常集成他们的工作,通过每个成员每天至少集成一次,也就意味着每天可能会发生多次集成.每次集成都通过自动化的构建(包括编译,发布,自动化测试)来验证 ...

  3. 一个epoll的简单例子

    epoll事件机制的触发方式有两种:LT(电平触发)和ET(边沿触发) EPOLLIN事件: 内核中的socket接收缓冲区 为空(低电平) 内核中的socket接受缓冲区 不为空(高电平) EPOL ...

  4. linux下编译boost的多线程程序

    linux下面用boost库进行多线程编程,一开始总是编译不成功,花了好多的时间. 下面是一段小示例代码: //start from the very beginning,and to create ...

  5. python——import日常学习记录

    import为导入包,有两种方法,一个是import,一个是from ** import  ** import后紧跟着的是个模块,一般是一个.py文件下的类名: from *** import *** ...

  6. 细说 PEP 468: Preserving Keyword Argument Order

    细说 PEP 468: Preserving Keyword Argument Order Python 3.6.0 版本对字典做了优化,新的字典速度更快,占用内存更少,非常神奇.从网上找了资料来看, ...

  7. Docker 快速安装Jenkins完美教程 (亲测采坑后详细步骤)

    一.前言 有人问,为什么要用Jenkins,在一些中小型企业?我说下我以前开发的痛点,每次开发一个项目完成后,需要打包部署,可能没有专门的运维人员,只能开发人员去把项目打成一个war包,可能这个项目已 ...

  8. Spring官网阅读(九)Spring中Bean的生命周期(上)

    文章目录 生命周期回调 1.Bean初始化回调 2.Bean销毁回调 3.配置默认的初始化及销毁方法 4.执行顺序 5.容器启动或停止回调 Lifecycle 接口 LifecycleProcesso ...

  9. 自己动手在Linux系统实现一个everything程序

    大家好,我是良许. 我们知道,在 Windows 下,有一款非常实用的神器,叫作 Everything ,它可以在极短的时间里,搜索出来你所想要的文件/目录,如下图示: Linux 下也有一些类似于 ...

  10. 设计模式之GOF23访问者模式

    访问者模式Visitor 模式动机:对于存储在一个集合中的对象,他们可能具有不同的类型(即使有一个公共的接口),对于该集合中的对象,可以接受一类称为访问者的对象来访问,不同访问者的访问方式也不同 定义 ...