Python 如何用空格对列表进行排序
我正在尝试用空格对列表进行排序 像 但我犯了个错误 代码:Python 如何用空格对列表进行排序,python,python-3.x,Python,Python 3.x,我正在尝试用空格对列表进行排序 像 但我犯了个错误 代码: strength = int(input()) strength_s = strength.sort() print(strength_s) 从用户处获取带有空格的输入: strength = list(map(int, input().strip().split())) 对它们进行排序: strength.sort() 并打印: print(strength) python中的input函数将整行返回为str 因此,如果输入以
strength = int(input())
strength_s = strength.sort()
print(strength_s)
从用户处获取带有空格的输入:
strength = list(map(int, input().strip().split()))
对它们进行排序:
strength.sort()
并打印:
print(strength)
python中的input
函数将整行返回为str
因此,如果输入以空格分隔的整数列表,input
函数将以字符串形式返回整行
>a=input()
1 2 3 4 5
>>>类型(a)
>>>a
'1 2 3 4 5'
如果要将其保存为整数列表,则必须遵循以下过程
>a=input()
1 2 3 4 5
>>>a
'1 2 3 4 5'
现在,我们需要分离字符串中的数字,即拆分字符串
>>a=a.strip().split()#.strip()只需去除尾随空格即可
>>>a
['1', '2', '3', '4', '5']
我们现在有一个列表
的字符串
,我们必须将其转换为列表
的整数
。我们必须为列表的每个元素调用int()
,最好的方法是使用map
函数
>a=map(int,a)
>>>a
>>>a=list(a)#map()返回作为生成器的映射对象,必须将其转换为列表
>>>a
[1, 2, 3, 4, 5]
我们终于有了一个列表的ints
整个过程主要在一行python
code:
>a=list(映射(int,input().strip().split())
1 2 3 4 5 6
>>>a
[1, 2, 3, 4, 5, 6]
首先,我的列表=[20 10 50 400 100 500]
既不是列表,也不是表示列表的正确方式。
您可以使用my_list=[20,10,50400100500]
表示一个列表
我假设我的列表是一个字符串。然后将字符串拆分为一个列表,将列表转换为整数,然后对其进行排序,如下所示
my_list = "20 10 50 400 100 500"
li = [int(item) for item in my_list.split(' ')]
print(sorted(li))
#[10, 20, 50, 100, 400, 500]
为了使您的原始代码正常工作,我们将
strength = input()
strength_li = [int(item) for item in strength.split(' ')]
print(sorted(strength_li))
输出结果如下所示
10 20 40 30 60
#[10, 20, 30, 40, 60]
尝试将第一行更改为strength=map(int,input().split())
可能重复的
strength = input()
strength_li = [int(item) for item in strength.split(' ')]
print(sorted(strength_li))
10 20 40 30 60
#[10, 20, 30, 40, 60]