真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

python3排序函數(shù),python3排序算法

python字母順序排序

1. (按字母順序排列)——sort()函數(shù)

創(chuàng)新互聯(lián)專注于石拐網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗。 熱誠為您提供石拐營銷型網(wǎng)站建設(shè),石拐網(wǎng)站制作、石拐網(wǎng)頁設(shè)計、石拐網(wǎng)站官網(wǎng)定制、微信小程序服務(wù),打造石拐網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供石拐網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

例:

cars?=['bmw','audi','toyota','subaru']

cars.sort()

print(cars)

輸出得到

['audi', 'bmw', 'subaru', 'toyota']

請點擊輸入圖片描述

請點擊輸入圖片描述

2.按字母反序排列——reverse函數(shù)

cars?=['bmw','audi','toyota','subaru']

cars.sort(reverse=True)# reverse“adj. 反面的;顛倒的;n. 倒轉(zhuǎn),反向”

print(cars)

輸出得到

['toyota', 'subaru', 'bmw', 'audi']

請點擊輸入圖片描述

請點擊輸入圖片描述

3.對列表進行臨時排序——sorted()函數(shù)

cars?=['bmw','audi','toyota','subaru']

print("Here?is?the?original?list:")

print(cars)

print("\nHere?is?the?sorted?list:")

print(sorted(cars))

print("Here?is?the?original?list?again:")

print(cars)

輸出得到

Here is the original list:

['bmw', 'audi', 'toyota', 'subaru']

Here is the sorted list:

['audi', 'bmw', 'subaru', 'toyota']

Here is the original list again:

['bmw', 'audi', 'toyota', 'subaru']

請點擊輸入圖片描述

請點擊輸入圖片描述

4. 倒著打印列表——reverse()函數(shù)

cars?=['bmw','audi','toyota','subaru']

print(cars)

cars.reverse()

print(cars)

輸出得到

['bmw', 'audi', 'toyota', 'subaru']

['subaru', 'toyota', 'audi', 'bmw']

請點擊輸入圖片描述

請點擊輸入圖片描述

python3用sorted排序

如果a = [ [1,'3'], [1,'2'],[2,'5'],[2,'4'] ]

有兩種解決方式:

方法一:

將字符串轉(zhuǎn)換為int

sorted(list, key=lambda x:(x[0],-int(x[1])))

方法二:

取字符串的第一個字母進行比較

s = sorted(a, key=lambda x:(x[0],x[1][0]))

這個方法當字符串為一串單詞時,也有效

python3.0中sorted函數(shù)怎么用

【Python】 sorted函數(shù)

我們需要對List、Dict進行排序,Python提供了兩個方法

對給定的List L進行排序,

方法1.用List的成員函數(shù)sort進行排序,在本地進行排序,不返回副本

方法2.用built-in函數(shù)sorted進行排序(從2.4開始),返回副本,原始輸入不變

--------------------------------sorted---------------------------------------

help(sorted)

Help on built-in function sorted in module __builtin__:

sorted(...)

sorted(iterable, cmp=None, key=None, reverse=False) -- new sorted list

---------------------------------sort----------------------------------------

help(list.sort)

Help on method_descriptor:

sort(...)

L.sort(cmp=None, key=None, reverse=False) -- stable sort *IN PLACE*;

cmp(x, y) - -1, 0, 1

-----------------------------------------------------------------------------

iterable:是可迭代類型;

cmp:用于比較的函數(shù),比較什么由key決定;

key:用列表元素的某個屬性或函數(shù)進行作為關(guān)鍵字,有默認值,迭代集合中的一項;

reverse:排序規(guī)則. reverse = True 降序 或者 reverse = False 升序,有默認值。

返回值:是一個經(jīng)過排序的可迭代類型,與iterable一樣。

參數(shù)說明:

(1) cmp參數(shù)

cmp接受一個函數(shù),拿整形舉例,形式為:

def f(a,b):

return a-b

如果排序的元素是其他類型的,如果a邏輯小于b,函數(shù)返回負數(shù);a邏輯等于b,函數(shù)返回0;a邏輯大于b,函數(shù)返回正數(shù)就行了

(2) key參數(shù)

key也是接受一個函數(shù),不同的是,這個函數(shù)只接受一個元素,形式如下

def f(a):

return len(a)

key接受的函數(shù)返回值,表示此元素的權(quán)值,sort將按照權(quán)值大小進行排序

(3) reverse參數(shù)

接受False 或者True 表示是否逆序

例子:

(1)按照元素長度排序

L = [{1:5,3:4},{1:3,6:3},{1:1,2:4,5:6},{1:9}]

def f(x):

return len(x)

sort(key=f)

print L

輸出:

[{1: 9}, {1: 5, 3: 4}, {1: 3, 6: 3}, {1: 1, 2: 4, 5: 6}]

(2)按照每個字典元素里面key為1的元素的值排序

L = [{1:5,3:4},{1:3,6:3},{1:1,2:4,5:6},{1:9}]

def f2(a,b):

return a[1]-b[1]

L.sort(cmp=f2)

print L

. 對由tuple組成的List排序

Python代碼

students = [('john', 'A', 15), ('jane', 'B', 12), ('dave', 'B', 10),]

用key函數(shù)排序:返回由tuple組成的list

Python代碼

sorted(students, key=lambda student : student[2]) # sort by age

[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]

用cmp函數(shù)排序

Python代碼

sorted(students, cmp=lambda x,y : cmp(x[2], y[2])) # sort by age

[('dave', 'B', 10), ('jane', 'B', 12), ('john', 'A', 15)]

用 operator 函數(shù)來加快速度,

Python代碼

from operator import itemgetter, attrgetter

sorted(students, key=itemgetter(2))

用 operator 函數(shù)進行多級排序

Python代碼

sorted(students, key=itemgetter(1,2)) # sort by grade then by age

[('john', 'A', 15), ('dave', 'B', 10), ('jane', 'B', 12)]

2. 對由字典排序 ,返回由tuple組成的List,不再是字典。

Python代碼

d = {'data1':3, 'data2':1, 'data3':2, 'data4':4}

sorted(d.iteritems(), key=itemgetter(1), reverse=True)

[('data4', 4), ('data1', 3), ('data3', 2), ('data2', 1)]


文章標題:python3排序函數(shù),python3排序算法
網(wǎng)站路徑:http://weahome.cn/article/dscsdeg.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部