python用户输入若干个整数,按降序打印输出在一行(使用空格间隔),并给出中位数?

如题所述

# coding=gbk
import numpy as np

inputStr = input("请输入多个整数,以空格分隔:")
# 使用列表推导式将输入的内容以空格分隔,如果有小数,则通过int函数变为整数
input_lists = [int(num) for num in inputStr.split(" ")]
# 通过sort方法,并使用参数reverse=True,来将列表的数据以降序排列
input_lists.sort(reverse=True)
# 由于通过",".join()连接的列表不能有整数元素,所以通过列表推导式将列表每个元素通过str转为字符串后,再联接为以逗号分隔的字符串
print(",".join([str(num) for num in input_lists]))

# 使用numpy的median函数来得到中位数
print(np.median(input_lists))

温馨提示:答案为网友推荐,仅供参考