Python3 将txt数据转换成列表,进行排序,筛选
Python 程序员需要知道的 30 个技巧
首先是数据:

将上边的四个数据分别写在新建的txt文件中
1、将txt数据转为列表
with open('james.txt') as jaf:
data = jaf.readline() #读取数据行
james = data.strip().split(',')#将数据转换为列表
with open('julie.txt') as jul:
data = jul.readline()
julie = data.strip().split(',')
with open('sarah.txt') as sar:
data = sar.readline()
sarah = data.strip().split()
方法一
with open('james.txt') as jaf, open('julie.txt') as jul,open('sarah.txt') as sar:
data = jaf.readline() #读取数据行
james = data.strip().split(',')#将数据转换为列表
data = jul.readline()
julie = data.strip().split(',')
data = sar.readline()
sarah = data.strip().split()
print(james)
print(julie)
print(sarah)
方法二
2、排序:原地排序 james.sort()、复制排序:james2 = james.sorted() 默认升序,降序参数 sort(reverse= True)
由于数据中有-.:, 需要进一步操作
def sanitize(listt):
if '-' in listt:
splitter = '-'
elif ':' in listt:
splitter = ':'
else:
return (listt)
(mine, sece) = listt.split(splitter)# 分裂字符串 结合字符串
return (mine + '.' + sece) def returnkist(string):
with open(string) as jaf:
data = jaf.readline() # 读取数据行
james = data.strip().split(',') # 将数据转换为列表
clean_james = []
for ja in james:
clean_james.append(sanitize(ja))
clean_james.sort(reverse=True) return clean_james clean = returnkist('james.txt')
print(clean)
方法一
def sanitize(listt):
if '-' in listt:
splitter = '-'
elif ':' in listt:
splitter = ':'
else:
return (listt)
(mine, sece) = listt.split(splitter)# 分裂字符串 结合字符串
return (mine + '.' + sece) with open('james.txt') as jaf, open('julie.txt') as jul,open('sarah.txt') as sar:
data = jaf.readline() #读取数据行
james = data.strip().split(',')#将数据转换为列表 data = jul.readline()
julie = data.strip().split(',') data = sar.readline()
sarah = data.strip().split()
clean_james = []
for ja in james:
clean_james.append(sanitize(ja))
clean_james.sort()
print(clean_james)
方法二
3、要返回前三名的成绩
在
def returnkist(string):
with open(string) as jaf:
data = jaf.readline() # 读取数据行
james = data.strip().split(',') # 将数据转换为列表
clean_james = [sanitize(s) for s in james]
clean_james.sort(reverse=True) return [clean_james[a] for a in range(3)]
-----------------------------------------------
Python3 将txt数据转换成列表,进行排序,筛选的更多相关文章
- 2019年6月12日——开始记录并分享学习心得——Python3.7中对列表进行排序
Python中对列表的排序按照是排序是否可以恢复分为:永久性排序和临时排序. Python中对列表的排序可以按照使用函数的不同可以分为:sort( ), sorted( ), reverse( ). ...
- 从零开始学习PYTHON3讲义(八)列表类型跟冒泡排序
<从零开始PYTHON3>第八讲 前面我们见过了不少的小程序,也见过了不少不同类型的变量使用的方法.但目前我们涉及到的,还都是单个的变量和单个的立即数.以变量来说,目前我们见到的,基本都 ...
- Python list列表的排序
当我们从数据库中获取一写数据后,一般对于列表的排序是经常会遇到的问题,今天总结一下python对于列表list排序的常用方法: 第一种:内建函数sort() 这个应该是我们使用最多的也是最简单的排序函 ...
- python内置数据类型-字典和列表的排序 python BIT sort——dict and list
python中字典按键或键值排序(我转!) 一.字典排序 在程序中使用字典进行数据信息统计时,由于字典是无序的所以打印字典时内容也是无序的.因此,为了使统计得到的结果更方便查看需要进行排序. Py ...
- Caffe框架,图像数据转换成LMDB数据格式
小码农最近在研究深度学习,对所学知识做点记录,以供以后翻阅.在Caffe框架中,数据的格式都是LMDB的,如何将图像数据转换成这个格式呢? 首先,将图像数据和标签生成txt文档,执行一下代码: fin ...
- wxPython制作跑monkey工具(python3)-带显示设备列表界面
一. wxPython制作跑monkey工具(python3)-带显示设备列表界面 源代码 Run Monkey.py #!/usr/bin/env python import wx import ...
- python3学习笔记五(列表2)
参考http://www.runoob.com/python3/python3-list.html 嵌套列表 a = ['a','b','c']b = [1,2,3]x = [a, b]print(x ...
- SpringMVC系列(十一)把后台返回的数据转换成json、文件下载、文件上传
一.后台返回的数据转换成json 1.引入转换json需要的3个依赖 <!--json转换需要的依赖 begin --> <dependency> <groupId> ...
- python3.4学习笔记(十一) 列表、数组实例
python3.4学习笔记(十一) 列表.数组实例 #python列表,数组类型要相同,python不需要指定数据类型,可以把各种类型打包进去#python列表可以包含整数,浮点数,字符串,对象#创建 ...
随机推荐
- iOS学习——如何在mac上获取开发使用的模拟器的资源以及模拟器中每个应用的应用沙盒
如题,本文主要研究如何在mac上获取开发使用的模拟器的资源以及模拟器中每个应用的应用沙盒.做过安卓开发的小伙伴肯定很方便就能像打开资源管理器一样查看我们写到手机本地或应用中的各种资源,但是在iOS开发 ...
- 登山(Climb)
题目: Rocky山脉有n个山峰,一字排开,从西向东依次编号为1, 2, 3, --, n.每个山峰的高度都是不一样的.编号为i的山峰高度为hi. 小修从西往东登山.每到一座山峰,她就回头观望自己走 ...
- Mac安装Elasticsearch时提示:No Java runtime present, requesting install.
没有安装java的童鞋可以先去安装一下,地址:https://www.java.com/zh_CN/ 安装之后还是提示如下错误: ➜ elasticsearch-2.4.3 bin/elasticse ...
- Python——正则表达式
此篇文章结合小甲鱼的笔记和视频整理. 1 编译 Python 通过 re 模块为正则表达式引擎提供一个接口,同时允许你将正则表达式编译成模式对象,并用它们来进行匹配. 正则表达式被编译为模式对象,该对 ...
- 在JQuery中如何获取当前时间?
////发表时间(now) function p(s) { return s < 10 ? '0' + s : s; } var myDate = new Date(); //获取当前年 var ...
- C语言的scanf函数
一. 变量的内存分析 1. 字节和地址 1> 内存以“字节为单位”,Oxffc1,Oxffc2,Oxffc3,Oxffc4....都是字节 ,0x表示的是十六进制 2> 不同类型占用的字节 ...
- C语言一些知识点总结
一.关键字 1. 什么是关键字 1> 关键字就是C语言提供的有特殊含义的符号,也叫做“保留字” 2> C语言一共提供了32个关键字,这些关键字都被C语言赋予了特殊含义 auto doubl ...
- 数据库索引------B-Tree 索引和 Hash 索引的对比
对于 B-tree 和 hash 数据结构的理解能够有助于预测不同存储引擎下使用不同索引的查询性能的差异,尤其是那些允许你选择 B-tree 或者 hash 索引的内存存储引擎. B-Tree 索引的 ...
- [P4基础]p4app的Docker镜像仓使用详解
How to use the p4lang/p4app Docker image 本文参考 孙勇峰博客 和 p4app README 以及 p4app Dockerfile 结合自己的理解做一些记录, ...
- Python学习之--socket续集
IO多路复用: I/O多路复用指:通过一种机制,可以监视多个描述符,一旦某个描述符就绪(一般是读就绪或者写就绪),能够通知程序进行相应的读写操作. 一个很简单的linux例子,select,poll, ...