python 实现查找文件并输出满足某一条件的数据项方法


Posted in Python onJune 12, 2019

python 实现文件查找和某些项输出

本文是基于给定一文件(students.txt),查找其中GPA分数最高的 输出,同时输出其对应的姓名和学分

一. 思路

首先需要打开文件,读取文件的每一行,将姓名,学分,GPA值分别存到三个对应的列表中,对于GPA列表进行遍历,获取其中值最大的一项,但是需要保存最大值对应的索引,方便输出对应的姓名和学分项

二. 代码

版本1

# -*- coding: utf-8 -*-
"""
Created on Thu Feb 1 12:24:18 2018

@author: Administrator
"""

def main():
  file=open("students.txt",'r') 
  lines=file.readlines() #使用readlines()函数 读取文件的全部内容,存成一个列表,每一项都是以换行符结尾的一个字符串,对应着文件的一行

  list_name=[] #初始化一个空列表 用来存该文件的姓名 也就是第一列
  list_scores=[]
  list_gpa=[]

  for line in lines:   #开始进行处理 把第一列存到list_name 第二列存到list_scores,,,,,
    elements=line.split()
    list_name.append(elements[0])
    list_scores.append(elements[1])
    list_gpa.append(elements[2])

  max_gpa=0 
  index=0

  for i in range (len(list_gpa)):  #对于列表list_gpa 遍历该列表找其中gpa分数最高的
    if max_gpa <float(list_gpa[i]):
      max_gpa=float(list_gpa[i])
      index=i      #这一步就是记录list_gpa中GPA最高的在列表的第几个位置,方面输出对应的姓名和分数
  print("the person is {0} and the scores are {1} ,the gpa is {2}".format(list_name[index],list_scores[index],max_gpa))

main()

版本2

#这个是根据第二项hours和第三项points的比值,哪个值大就输出对应的学分points和GPA值points/hours

def main():
  file=open("students.txt",'r')
  lines=file.readlines()
  list_name=[]
  list_hours=[]
  list_points=[]

  for line in lines:
    elements=line.split()
    list_name.append(elements[0])
    list_hours.append(elements[1])
    list_points.append(elements[2])

  list_gpa=[] #这个列表用来存放hours 和points之间的比值

  for i in range(len(list_name)):
    a=float(list_hours[i])
    b=float(list_points[i])
    c=b/a
    list_gpa.append(str(c))  #把原来list_hours 和list_points中对应项的比值都存到list_gpa列表中

  maxgpa=0
  for i in range(len(list_gpa)):  #找list_gpa中值最大的那项
    if maxgpa<float(list_gpa[i]):
      maxgpa=float(list_gpa[i])
      index=i  #记录下gpa值最大的那项对应的索引值,方便输出其他项
  print("the max GPA is {},his name is {} and the scorespoint is {}".format(maxgpa,list_name[index],list_points[index]))

main()

以上这篇python 实现查找文件并输出满足某一条件的数据项方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python数组过滤实现方法
Jul 27 Python
Python使用matplotlib绘制三维图形示例
Aug 25 Python
Python利用pandas处理Excel数据的应用详解
Jun 18 Python
对Python的交互模式和直接运行.py文件的区别详解
Jun 29 Python
django获取from表单multiple-select的value和id的方法
Jul 19 Python
python实现五子棋游戏(pygame版)
Jan 19 Python
python实现简单井字棋游戏
Mar 04 Python
python TCP包注入方式
May 05 Python
python opencv 实现读取、显示、写入图像的方法
Jun 08 Python
Python获取android设备cpu和内存占用情况
Nov 15 Python
python实现图片批量压缩
Apr 24 Python
高考要来啦!用Python爬取历年高考数据并分析
Jun 03 Python
Python当中的array数组对象实例详解
Jun 12 #Python
Django模型序列化返回自然主键值示例代码
Jun 12 #Python
pandas实现将dataframe满足某一条件的值选出
Jun 12 #Python
python 列表输出重复值以及对应的角标方法
Jun 11 #Python
使用python list 查找所有匹配元素的位置实例
Jun 11 #Python
python找出一个列表中相同元素的多个索引实例
Jun 11 #Python
三步实现Django Paginator分页的方法
Jun 11 #Python
You might like
PHP sprintf() 函数的应用(定义和用法)
2012/06/29 PHP
php实现微信扫码支付
2017/03/26 PHP
PHP性能分析工具xhprof的安装使用与注意事项
2017/12/19 PHP
javascript作用域容易记错的两个地方分析
2012/06/22 Javascript
Jquery通过Ajax访问XML数据的小例子
2013/11/18 Javascript
js 自动播放的实例代码
2013/11/19 Javascript
JS保留两位小数,多位小数的示例代码
2014/01/07 Javascript
JQuery实现table行折叠效果以JSON做数据源
2014/05/26 Javascript
JavaScript匿名函数与委托使用示例
2014/07/22 Javascript
Javascript实现Web颜色值转换
2015/02/05 Javascript
简介JavaScript中valueOf()方法的使用
2015/06/05 Javascript
jquery控制显示服务器生成的图片流
2015/08/04 Javascript
css如何让浮动元素水平居中
2015/08/07 Javascript
JQuery datepicker 用法详解
2015/12/25 Javascript
jQuery插件开发精品教程让你的jQuery提升一个台阶
2016/01/27 Javascript
jQuery模拟下拉框选择对应菜单的内容
2017/03/07 Javascript
Vue 换肤的示例实践
2018/01/23 Javascript
js简单遍历获取对象中的属性值的方法示例
2019/06/19 Javascript
手把手教您实现react异步加载高阶组件
2020/04/07 Javascript
[01:45]IMBATV TI4前线报道-选手到达
2014/07/07 DOTA
Python与shell的3种交互方式介绍
2015/04/11 Python
使用python加密自己的密码
2015/08/04 Python
用matplotlib画等高线图详解
2017/12/14 Python
Python神奇的内置函数locals的实例讲解
2019/02/22 Python
pytorch中的上采样以及各种反操作,求逆操作详解
2020/01/03 Python
python画图常规设置方式
2020/03/05 Python
用CSS3实现瀑布流布局的示例代码
2017/11/10 HTML / CSS
实例讲解利用HTML5 Canvas API操作图形旋转的方法
2016/03/22 HTML / CSS
Scholastic父母商店:儿童书籍
2017/01/01 全球购物
Europcar意大利:汽车租赁
2019/07/07 全球购物
Lookfantastic阿联酋官网:英国知名美妆护肤购物网站
2020/05/26 全球购物
中学教师培训制度
2014/01/31 职场文书
应届生求职信
2014/05/31 职场文书
初中生旷课检讨书范文
2014/10/06 职场文书
欢送会主持词
2015/07/01 职场文书
Python Pandas数据分析之iloc和loc的用法详解
2021/11/11 Python