Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/352.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在Python中,如何获取一系列平均值并对它们进行排序?_Python - Fatal编程技术网

在Python中,如何获取一系列平均值并对它们进行排序?

在Python中,如何获取一系列平均值并对它们进行排序?,python,Python,player_avg是一个字符串,包含棒球运动员的击球平均数,以逗号分隔: player_avg = "0.209,0.305,0.265,0.175,0.324,0.215,0.362,0.178,0.273,0.309" 如何编写代码来计算击球率大于0.299的球员数量,并将结果存储在变量num_players_over_300中?将字符串拆分为一个列表,然后对其排序。仅获取大于0.300的值 avg_list = sorted([float(avg) for avg in player_

player_avg是一个字符串,包含棒球运动员的击球平均数,以逗号分隔:

player_avg = "0.209,0.305,0.265,0.175,0.324,0.215,0.362,0.178,0.273,0.309"

如何编写代码来计算击球率大于0.299的球员数量,并将结果存储在变量num_players_over_300中?

将字符串拆分为一个列表,然后对其排序。仅获取大于0.300的值

avg_list = sorted([float(avg) for avg in player_avg.split(',')])
players_over_300 = [avg for avg in avg_list if avg > 0.3]
num_players_over_300 = len(players_over_300)

这是一个列表理解的备选方案:

player_avg = "0.209,0.305,0.265,0.175,0.324,0.215,0.362,0.178,0.273,0.309"
num_players_over_300 = len([float(i) for i in player_avg.split(',') if float(i) > 0.299])
输出: 四,

这是你的密码


使用您可以学习的基本步骤编写代码-

>>> player_avg = "0.209,0.305,0.265,0.175,0.324,0.215,0.362,0.178,0.273,0.309"
>>> player_avg.split(',')
['0.209', '0.305', '0.265', '0.175', '0.324', '0.215', '0.362', '0.178', '0.273', '0.309']
>>> arr = player_avg.split(',')
>>> arr
['0.209', '0.305', '0.265', '0.175', '0.324', '0.215', '0.362', '0.178', '0.273', '0.309']
>>> op = []
>>> for i in arr:
...  if float(i) > 0.299:
...   op.append(float(i))
...
>>> op
[0.305, 0.324, 0.362, 0.309]
>>> op.sort()
>>> op
[0.305, 0.309, 0.324, 0.362]
>>>

你能分享你写的产生错误输出的代码吗?你要求做什么,对数字进行排序,或者找到超过某个值的数字?所以0.300算作超过300?到底是什么问题?你真的尝试过什么,做过什么研究吗?为什么你以前需要排序?他的标题是Python,我如何获取一系列平均值并对它们进行排序?。
>>> player_avg = "0.209,0.305,0.265,0.175,0.324,0.215,0.362,0.178,0.273,0.309"
>>> player_avg.split(',')
['0.209', '0.305', '0.265', '0.175', '0.324', '0.215', '0.362', '0.178', '0.273', '0.309']
>>> arr = player_avg.split(',')
>>> arr
['0.209', '0.305', '0.265', '0.175', '0.324', '0.215', '0.362', '0.178', '0.273', '0.309']
>>> op = []
>>> for i in arr:
...  if float(i) > 0.299:
...   op.append(float(i))
...
>>> op
[0.305, 0.324, 0.362, 0.309]
>>> op.sort()
>>> op
[0.305, 0.309, 0.324, 0.362]
>>>