python 求最大值、最小值、平均值

刘日辉 2021-04-06 18:34:30
Python


一、题目

用循环解答以下题目:

1、从外界获取10个值,输出最大值、最小值、平均值;
2、从外界获取10个值,输出最大值的索引、最小值的索引。


二、解答

思路:先理清楚题目所需要的知识点,再组合起来。

2.1从外界获取数据

input()函数

这里没有规定数据类型,所以我们可以把input()返回来的字符串转成整型或浮点型,如: int(input('请输入一个整数:\n'))  float(input('请输入一个浮点数:\n'))

获取的数据我们可以通过列表存起来。列表创建的时候如果是空的,则可以通过不断追加数据的方式。比如:

a=[]

a.append(int(input()))

如果列表原来不是空的,则可以通过列表名称和索引的方式替换列表中的元素:

a=[1,2,3,4,5,6,7,8,9,10]

a[0]=int(input())

由于元素比较多,所以我们可以通过循环的方式,比如:

i=0;

while i<10:

    a.append(int(input())) #如果列表一开始是空的

    a[i]=int(input())#如果列表一开始就有了数据

    i=i+1

2.2获取最值

我们可以通过定义一个最值(初始值是列表里面的一个数),然后把这个最值和列表里面的所有元素进行比较,如果发现有值比最值还大,则让最值等于新的最大值/最小值。

如果不用循环,这是:

theMax=a[0]

if a[1]>theMax:

    theMax=a[1]

if a[2]>theMax:

    theMax=a[2]

...以此到:

if(a[9]>theMax):

    theMax=a[9]

如果用循环,我们只需要产生一个变化的j来代替列表的索引:

j=0;

while j<len(a):

    if j>theMax:

        theMax=j

    j++

同样最小值把上面的改成:

theMin=a[0]

if a[1]<theMin:

    theMin=a[1]

if a[2]<theMin:

    theMin=a[2]

...以此到:

if(a[9]<theMin):

    theMin=a[9]

如果用循环,我们只需要产生一个变化的j来代替列表的索引:

j=0;

while j<len(a):

    if j<theMin:

        theMin=j

    j++

2.3求平均值

求平均值首先求总和,总和可以通过累加的方式:

sum=a[0]+a[1]+a[2]+a[3]+a[4]+a[5]+a[6]+a[7]+a[8]+a[9]

或者通过循环的方式:

sum=0

for z in a:

    sum=sum+z

然后除以元素个数 len(a)就可以得到平均值了。

theAvg=sum/len(a)

2.4求最值索引

声明两个变量,用于存储最大最小值的索引的,默认从零开始(你设定的最大值、最小值从哪个开始,对应的最值索引的开始的值就是哪个):

indexMax=0

indexMin=0

如果是用for in :循环的,用一个临时值获取:

indexMax=0
indexMin=0
for j in a:
if j>theMax:#如果发现有一个值比theMax还大
theMax=j
indexMax=a.index(j)#通过函数获取索引
if theMin>j:#如果发现有一个值比theMin还小
theMin=j
indexMin=a.index(j)#通过函数获取索引
theSum=theSum+j

也可以用a.index()的方式获取索引:

q=0#记录索引
for j in a:
if j>theMax:#如果发现有一个值比theMax还大
theMax=j
indexMax=q
if theMin>j:#如果发现有一个值比theMin还小
theMin=j
indexMin = q
theSum=theSum+j
q = q + 1

或者通过while的方式获取:

indexMax=0
indexMin=0
i=0#记录索引
while i<len(a):
if a[i]>theMax:
theMax=a[i]
indexMax=i
if theMin>a[i]:
theMin=a[i]
indexMin=i
theSum=theSum+a[i]
i=i+1

三、代码

或者用函数,但是这道题的本意是用循环:

注意,虽然a.index(max(a))可以获取到出现的索引,但是这个只是返回最大值的第一次出现的位置

版权声明
本文为[刘日辉]所创,转载请带上原文链接,感谢
https://my.oschina.net/liurihui/blog/5010218

  1. Spark Delta Lake 0.4.0 发布,支持 Python API 和部分 SQL
  2. How to transfer office files to PDF
  3. Are you still worried about multiple excel summary statistics? Python second processing really fragrant!
  4. Making music aggregate downloader with Python
  5. Spark delta Lake 0.4.0 is released, supporting Python API and part of SQL
  6. Python信息搜集
  7. Python information gathering
  8. Python - 关于类(self/cls) 以及 多进程通讯的思考
  9. Python - thinking about class (self / CLS) and multi process communication
  10. Python - 关于类(self/cls) 以及 多进程通讯的思考
  11. Python - thinking about class (self / CLS) and multi process communication
  12. Python信用评分卡建模(附代码)
  13. Python credit score card modeling (with code)
  14. 学Python需要学数据库吗?Python学习教程!
  15. Do you need to learn database to learn Python!
  16. Python私有变量如何定义?Python学习教程!
  17. How to define Python private variables? Python tutorial!
  18. Python数据分析入门(六):Pandas的函数应用
  19. Introduction to Python data analysis (6): function application of pandas
  20. 学Python需要学数据库吗?Python学习教程!
  21. Do you need to learn database to learn Python!
  22. Python描述 LeetCode 80. 删除有序数组中的重复项 II
  23. C++/python描述 AcWing 94. 递归实现排列型枚举
  24. C++/python描述 AcWing 92. 递归实现指数型枚举
  25. Python描述 LeetCode 88. 合并两个有序数组
  26. 苏州大学计算机考研 复试机试真题2013-2021真题及Python题解
  27. Python描述 LeetCode 781. 森林中的兔子
  28. 字典和json的区别是什么?Python学习
  29. Python describes leetcode 80. Removing duplicate items from ordered arrays II
  30. C + + / Python description acwing 94. Recursive implementation of permutation enumeration
  31. C + + / Python description acwing 92. Recursive implementation of exponential enumeration
  32. Python describes leetcode 88. Merging two ordered arrays
  33. Real computer test questions 2013-2021 of computer postgraduate entrance examination of Soochow University and python solutions
  34. The rabbit in the forest
  35. Python中的魔法属性
  36. What's the difference between dictionary and JSON? Python learning
  37. Magic properties in Python
  38. 字典和json的区别是什么?Python学习
  39. What's the difference between dictionary and JSON? Python learning
  40. python刷题-字母图形
  41. Python brush questions - letter graphics
  42. Python数据分析入门(七):Pandas层级索引
  43. Introduction to Python data analysis (7): Pandas hierarchical index
  44. Python 操作腾讯云短信(sms)详细教程
  45. Python operation Tencent cloud SMS (SMS) detailed tutorial
  46. Python数据可视化,完整版实操指南 !
  47. Python data visualization, full version of the practical guide!
  48. 上手Pandas,带你玩转数据(2)-- 使用pandas从多种文件中读取数据
  49. 上手Pandas,带你玩转数据(1)-- 实例详解pandas数据结构
  50. Using pandas to read data from various files
  51. Hands on pandas, take you to play with data (1) -- detailed explanation of pandas data structure with examples
  52. Pandas数据结构基础用法
  53. Basic usage of pandas data structure
  54. Python读取ini配置文件,保存到对象属性
  55. Python reads the INI configuration file and saves it to the object properties
  56. Foundation of Python: classes in Python
  57. python刷题-闰年判断
  58. python刷题-01字串
  59. How to judge leap year
  60. Python brush title-01 string