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 url 参数修改方法
Dec 26 Python
Python子类继承父类构造函数详解
Feb 19 Python
元组列表字典(莫烦python基础)
Apr 03 Python
Python开发之Nginx+uWSGI+virtualenv多项目部署教程
May 13 Python
OpenCV图像颜色反转算法详解
May 13 Python
python买卖股票的最佳时机(基于贪心/蛮力算法)
Jul 05 Python
Pandas+Matplotlib 箱式图异常值分析示例
Dec 09 Python
Python3操作MongoDB增册改查等方法详解
Feb 10 Python
Python cookie的保存与读取、SSL讲解
Feb 17 Python
Kmeans均值聚类算法原理以及Python如何实现
Sep 26 Python
关于PyCharm安装后修改路径名称使其可重新打开的问题
Oct 20 Python
Python Http请求json解析库用法解析
Nov 28 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获取apk包信息的方法
2014/08/15 PHP
3款值得推荐的微信开发开源框架
2014/10/28 PHP
WampServer搭建php环境时遇到的问题汇总
2015/07/23 PHP
利用php输出不同的心形图案
2016/04/22 PHP
php编程实现简单的网页版计算器功能示例
2017/04/26 PHP
jquery中的$(document).ready()与window.onload的区别
2009/11/18 Javascript
js 静态动态成员 and 信息的封装和隐藏
2011/05/29 Javascript
jquery实现控制表格行高亮实例
2013/06/05 Javascript
javascript图片相似度算法实现 js实现直方图和向量算法
2014/01/14 Javascript
JavaScript DOM基础
2015/04/13 Javascript
JS访问SWF的函数用法实例
2015/07/01 Javascript
jQuery实现简易的天天爱消除小游戏
2015/10/16 Javascript
ECHO.js 纯javascript轻量级延迟加载的实例代码
2016/05/24 Javascript
微信小程序 教程之wxapp视图容器 swiper
2016/10/19 Javascript
jquery获取easyui日期控件的值实现方法
2016/11/09 Javascript
JS实现滑动门效果的方法详解
2016/12/19 Javascript
webpack的CSS加载器的使用
2018/09/11 Javascript
JS/HTML5游戏常用算法之路径搜索算法 随机迷宫算法详解【普里姆算法】
2018/12/13 Javascript
JavaScript惰性载入函数实例分析
2019/03/27 Javascript
vue中多个倒计时实现代码实例
2019/03/27 Javascript
Python实现简单拆分PDF文件的方法
2015/07/30 Python
在Linux系统上通过uWSGI配置Nginx+Python环境的教程
2015/12/25 Python
Python实现屏幕截图的两种方式
2018/02/05 Python
Flask框架通过Flask_login实现用户登录功能示例
2018/07/17 Python
Python多线程同步---文件读写控制方法
2019/02/12 Python
Python基本数据结构与用法详解【列表、元组、集合、字典】
2019/03/23 Python
Python彻底删除文件夹及其子文件方式
2019/12/23 Python
Python3爬虫中Selenium的用法详解
2020/07/10 Python
水果花束:Fruit Bouquets
2017/12/20 全球购物
单位绩效考核方案
2014/05/11 职场文书
2014年大学生预备党员思想汇报1000字
2014/09/13 职场文书
七年级生物教学反思
2016/02/20 职场文书
导游词之大雁塔景区
2019/09/17 职场文书
python xlwt模块的使用解析
2021/04/13 Python
Golang 语言控制并发 Goroutine的方法
2021/06/30 Golang
浅析JavaScript中的变量提升
2022/06/01 Javascript