Python 每日一练(5)
引言
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)的更多相关文章
- python每日一练:0007题
第 0007 题: 有个目录,里面是你自己写过的程序,统计一下你写过多少行代码.包括空行和注释,但是要分别列出来. # -*- coding:utf-8 -*- import os def count ...
- [python每日一练]--0012:敏感词过滤 type2
题目链接:https://github.com/Show-Me-the-Code/show-me-the-code代码github链接:https://github.com/wjsaya/python ...
- Python 每日一练 | Flask 实现半成品留言板
留言板Flask实现 引言 看了几天网上的代码,终于写出来一个半成品的Flask的留言板项目,为什么说是半成品呢?因为没能实现留言板那种及时评论刷新的效果,可能还是在重定向上有问题 或者渲染写的存在问 ...
- Python 每日一练(4)
引言 今天继续是python每日一练的几个专题,主要涵盖简单的敏感词识别以及图片爬虫 敏感词识别 这个敏感词的识别写的感觉比较简单,总的概括之后感觉功能可以简略成if filter_words in ...
- Python 每日一练(3)
引言 今天的每日一练,学习了一下用Python生成四位的图像验证码,就是我们常常在登录时见到的那种(#`O′) 思路分析 正如常见的那种图像验证码,它是由数字和字母的随机组合产生的,所以我们首先的第一 ...
- Python每日一练(1)
这两天在做Python的每日一练,感觉收获颇丰,所以来记录分享一下,一共做了三个,涉及socket,PIL,pymysql三个库,另外终于开始了Flask框架的学习,后续也会做出一些分析 第一个是一个 ...
- Python 每日一练(2)
引言 我又双叒叕的来啦,新博客的第二篇文章,这次是继之前公众号上每日一练的第二个,这次是专题实对于文件的一些处理的练习 主要有以下几类: 1.实现英文文章字频统计 2.统一剪裁某一指定目录下的所有图片 ...
- Python每日一练(1):计算文件夹内各个文章中出现次数最多的单词
#coding:utf-8 import os,re path = 'test' files = os.listdir(path) def count_word(words): dic = {} ma ...
- Python 每日一练(7)
引言 今天的练习比较轻松,原本是有两题的,但是第一题那个大致看了一下,其实和之前的6个练习差不多,就是把xls中的文件数据读取出来后,进行一下处理,对于那题而言就是一个求和操作,所以就没练了,所以今天 ...
随机推荐
- 一只简单的网络爬虫(基于linux C/C++)————线程相关
爬虫里面采用了多线程的方式处理多个任务,以便支持并发的处理,把主函数那边算一个线程的话,加上一个DNS解析的线程,以及我们可以设置的max_job_num值,最多使用了1+1+max_job_num个 ...
- 转载acm几何基础(2)
判断两条线段是否相交: 矢量 如果一条线段的端点是有次序之分的话,那么这种线段就称为 有向线段,如果有向线段p1p2的起点p1在坐标的原点,则可以把它称为矢量p2 矢量的加减 设二维矢量 P = (x ...
- 消息队列,RabbitMQ、Kafka、RocketMQ
目录 1.消息列队概述 1.1消息队列MQ 1.2AMQP和JMS 1.2.1AMQP 1.2.2JMS 1.2.3AMOP 与 JMS 区别 1.3消息队列产品 1.3.1 Kafka 1.3.2 ...
- 封锁阳光大学(染色)P1330
题目:https://www.luogu.com.cn/problem/P1330 阳光大学的校园是一张由 n 个点构成的无向图,n 个点之间由 m 条道路连接.每只河蟹可以对一个点进行封锁,当某个点 ...
- 线段树 离散化 E. Infinite Inversions E. Physical Education Lessons
题目一:E. Infinite Inversions 这个题目没什么思维量,还比较简单,就是离散化要加上每一个值的后面一个值,然后每一个值放进去的不是1 ,而是这个值与下一个点的差值. 因为这个数代表 ...
- 浅析Spring中AOP的实现原理——动态代理
一.前言 最近在复习Spring的相关内容,刚刚大致研究了一下Spring中,AOP的实现原理.这篇博客就来简单地聊一聊Spring的AOP是如何实现的,并通过一个简单的测试用例来验证一下.废话不 ...
- [hdu5316]线段树
题意:给一个array,有两种操作,(1)修改某一个位置的值,(2)询问区间[L,R]内的最大子段和,其中子段需满足相邻两个数的位置的奇偶性不同 思路:假设对于询问操作没有奇偶性的限制,那么记录区间的 ...
- [hdu5204]水题
思路:插入的数按指数级增长,所以范围内最多存在logR个数.并且最近i次插入的数,首位置为2^(i-1),且每隔2^i出现一次,于是暴力之..可以用插入排序维护,也可查询时再排下序. 一: #prag ...
- SpringData表关系:多对多
一.编写实体类配置关联关系: 1.多对多使用注解@ManyToMany配置:a. 在实体中添加一个集合属性 b.在属性上添加ManyToMany注解 c.@JoinTable 注解配置关联关系(nam ...
- 开源电影项目源码案例重磅分析,一套代码发布小程序、APP平台多个平台
uni-app-Video GitHub地址:https://github.com/Tzlibai/uni-app-video 一个优秀的uni-app案例,旨在帮助大家更快的上手uni-app,共同 ...