在python中查找最小值和最大值

use*_*073 7 python-2.7

我必须要求用户输入一些数字,然后打印大小,总和,平均值,最小值和最大值.我可以得到前三件事,但我坚持最小和最大的一件事.我sort()遇到的问题是我无法使用,因为我需要使列表为整数列表,但您不能使用整数列表split()

这是我的代码:

    number = raw_input('Enter number:')
    list_of_numbers = number.split()
    tally = 0
    sum = 0
      while number!= '':
        tally = tally + 1
        sum = sum + int(number)
        average = float(sum) / float(tally)
      number = raw_input('Enter number:')
    print "Size:", tally
    print "Sum:", sum
    print "Average:", average
Run Code Online (Sandbox Code Playgroud)

任何提示?谢谢

Yam*_*eko 18

你是否可以使用Python的内置函数?如果是,那就更容易了:

number = raw_input('Enter number:')
list_of_numbers = number.split()

numbersInt = map(int, list_of_numbers) # convert string list to integer list

print "Size:",    len(numbersInt)
print "Min:",     min(numbersInt)
print "Max:",     max(numbersInt)
print "Sum:",     sum(numbersInt)
print "Average:", float(sum(numbersInt))/len(numbersInt) if len(numbersInt) > 0 else float('nan')
Run Code Online (Sandbox Code Playgroud)

其中numbersInt = map(int, list_of_numbers)将列表的每个字符串编号转换为整数.每个函数具有以下含义:

  • len 计算列表的长度
  • min 计算最小值
  • max 计算最大值
  • sum 计算列表的总和

Python标准库中没有平均函数.但你可以numpy.mean()改用.


Eud*_*ran 4

我认为您可以使用 min() 和 max() 来查找这些值。