python实现一行输入多个整数并排序输出
一行输入多个整数并排序输出
【例1】一行输入若干整数,用空格分隔,从小大大排序输出。
范例:
List = list(map(int,input().split())) List.sort() print(List)
1.如何一行输入多个值?
我们使用input().split()的方法,进行输入和分隔。
input()即输入函数,输入的数据类型都是字符串类型。split()既可以将多个字符互传进行分割切片。
需要注意的是,通过split()分割的字符串返回的是列表。
a=input().split() print(a,type(a)) #输入:1 2 3 4 #输出:['1', '2', '3', '4'] <class 'list'>
但列表中每个元素都是由字符串类型,进行题目中的排序要求会出错。
a=input().split() a.sort() print(a) #输入:5 -8 8 20 #输出:['-8', '20', '5', '8']
同时可见,此方式输出的每个元素还是字符串。
2.如何将列表中的每个元素转换成整数类型呢?
我们使用map()进行列表元素数据类型的转换。
map()并不是拥来改变列表元素数据类型的函数,而是对列表中的每个元素做映射。
此处我们使用int()将列表中的元素转换成整数类型。
但是,在Python3中map()返回的并不是列表而是迭代器。
a=map(int,input().split()) print(a,type(a)) #5 -8 8 20 #<map object at 0x04569630> <class 'map'>
3.如何将map()返回的结果转换为列表,并进行排序?
我们使用list()将结果转换。
并且使用sort()进行排序。
在此默认进行的是升序排列,如果需要降序排列则需要如下操作:
sort(reverse=True)
总结
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
Python之NumPy(axis=0 与axis=1)区分详解
这篇文章主要介绍了Python之NumPy(axis=0 与axis=1)区分详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧2019-05-05
Python使用Playwright实现完美抓取复杂动态的网页
在爬虫开发中,动态 网页始终是块难啃的硬骨头,本文将通过真实案例拆解Playwright的核心优势,并提供可直接复用的代码方案,希望对大家有所帮助2025-10-10


最新评论