如何對字符串列表進行數(shù)字排序?我知道這聽起來微不足道,但我沒有意識到sort()Python的功能很奇怪。我有一個實際上是字符串形式的“數(shù)字”列表,所以我首先將它們轉(zhuǎn)換為int,然后嘗試排序。list1=["1","10","3","22","23","4","2","200"]for item in list1:
item=int(item)list1.sort()print list1給我:['1', '10', '2', '200', '22', '23', '3', '4']我想要的是['1','2','3','4','10','22','23','200']我已經(jīng)查看了一些與數(shù)字集排序相關(guān)的算法,但我發(fā)現(xiàn)的算法都涉及字母數(shù)字集的排序。我知道這可能是一個不需要思考的問題,但是Google和我的教科書并沒有提供比.sort()功能。
3 回答

當年話下
TA貢獻1890條經(jīng)驗 獲得超9個贊
list1 = ["1","10","3","22","23","4","2","200"]list1 = [int(x) for x in list1]list1.sort()
sort
key
list1 = ["1","10","3","22","23","4","2","200"]# call int(x) on each element before comparing itlist1.sort(key=int)

偶然的你
TA貢獻1841條經(jīng)驗 獲得超3個贊
for item in list1: item=int(item)
item
key=int
添加回答
舉報
0/150
提交
取消