Python中的sort和sorted都是用來(lái)排序的函數(shù),它們的主要區(qū)別在于它們的使用方式和作用對(duì)象不同。
十年建站經(jīng)驗(yàn), 成都做網(wǎng)站、成都網(wǎng)站制作客戶的見(jiàn)證與正確選擇。成都創(chuàng)新互聯(lián)公司提供完善的營(yíng)銷(xiāo)型網(wǎng)頁(yè)建站明細(xì)報(bào)價(jià)表。后期開(kāi)發(fā)更加便捷高效,我們致力于追求更美、更快、更規(guī)范。
sort是列表的一個(gè)方法,它會(huì)直接修改列表本身,將其按照一定的規(guī)則進(jìn)行排序。而sorted是一個(gè)內(nèi)置函數(shù),它不會(huì)修改原有序列,而是返回一個(gè)新的已排序的序列。
下面我們來(lái)詳細(xì)了解一下它們的區(qū)別。
## sort的使用方式和作用對(duì)象
sort是列表的一個(gè)方法,它可以對(duì)列表進(jìn)行排序,其使用方式如下:
`python
lst = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
lst.sort()
print(lst)
輸出結(jié)果為:
[1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
sort方法會(huì)直接修改原有的列表,將其按照從小到大的順序進(jìn)行排序。如果想要按照從大到小的順序進(jìn)行排序,可以使用reverse參數(shù):
`python
lst = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
lst.sort(reverse=True)
print(lst)
輸出結(jié)果為:
[9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]
sort方法還可以接受一個(gè)key參數(shù),用來(lái)指定排序規(guī)則。例如,可以按照絕對(duì)值大小進(jìn)行排序:
`python
lst = [3, -1, 4, -1, 5, 9, 2, -6, 5, 3, 5]
lst.sort(key=abs)
print(lst)
輸出結(jié)果為:
[-1, -1, 2, 3, 3, 4, 5, 5, 5, 9, -6]
## sorted的使用方式和作用對(duì)象
sorted是一個(gè)內(nèi)置函數(shù),它可以對(duì)任何序列進(jìn)行排序,其使用方式如下:
`python
lst = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
new_lst = sorted(lst)
print(new_lst)
輸出結(jié)果為:
[1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9]
sorted函數(shù)不會(huì)修改原有的序列,而是返回一個(gè)新的已排序的序列。如果想要按照從大到小的順序進(jìn)行排序,可以使用reverse參數(shù):
`python
lst = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]
new_lst = sorted(lst, reverse=True)
print(new_lst)
輸出結(jié)果為:
[9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1]
sorted函數(shù)也可以接受一個(gè)key參數(shù),用來(lái)指定排序規(guī)則。例如,可以按照絕對(duì)值大小進(jìn)行排序:
`python
lst = [3, -1, 4, -1, 5, 9, 2, -6, 5, 3, 5]
new_lst = sorted(lst, key=abs)
print(new_lst)
輸出結(jié)果為:
[-1, -1, 2, 3, 3, 4, 5, 5, 5, 9, -6]
## sort和sorted的區(qū)別
從上面的介紹可以看出,sort和sorted的主要區(qū)別在于:
- sort是列表的一個(gè)方法,直接修改原有的列表,而sorted是一個(gè)內(nèi)置函數(shù),不會(huì)修改原有的序列,而是返回一個(gè)新的已排序的序列。
- sort只能用于列表的排序,而sorted可以用于任何序列的排序。
- sort沒(méi)有返回值,而sorted返回已排序的序列。
## 關(guān)于python sort和sorted的區(qū)別的相關(guān)問(wèn)答
### 1. sort和sorted有什么區(qū)別?
sort是列表的一個(gè)方法,直接修改原有的列表,而sorted是一個(gè)內(nèi)置函數(shù),不會(huì)修改原有的序列,而是返回一個(gè)新的已排序的序列。
### 2. sort和sorted的使用方式有什么不同?
sort是列表的一個(gè)方法,可以直接對(duì)列表進(jìn)行排序,而sorted是一個(gè)內(nèi)置函數(shù),可以對(duì)任何序列進(jìn)行排序。
### 3. sort和sorted的排序規(guī)則可以自定義嗎?
是的,sort和sorted都可以接受一個(gè)key參數(shù),用來(lái)指定排序規(guī)則。
### 4. sort和sorted的返回值有什么不同?
sort沒(méi)有返回值,而sorted返回已排序的序列。
### 5. sort和sorted的使用場(chǎng)景有什么不同?
sort主要用于對(duì)列表進(jìn)行排序,而sorted則可以用于任何序列的排序。如果是對(duì)列表進(jìn)行排序,建議使用sort;如果是對(duì)其他序列進(jìn)行排序,建議使用sorted。
分享文章:python sort和sorted的區(qū)別
標(biāo)題URL:http://www.rwnh.cn/article8/dgpioop.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、網(wǎng)站制作、手機(jī)網(wǎng)站建設(shè)、品牌網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)