Python中的 sort 和 sorted的用法與區(qū)別
今天在做一道題時(shí),因?yàn)橥薖ython中sort和sorted的用法與區(qū)別導(dǎo)致程序一直報(bào)錯(cuò),找了好久才知道是使用方法錯(cuò)誤的問(wèn)題!現(xiàn)在就大致的歸納一下sort和sorted的用法與區(qū)別
1. sort:
sort是Python中列表的方法
sort() 方法語(yǔ)法:
list.sort(key=None, reverse=False)
有兩個(gè)參數(shù),這里不講第一個(gè)參數(shù),第二個(gè)參數(shù)當(dāng) reverse=True時(shí)為降序排列,reverse=False為升序排列,默認(rèn)reverse=False
重要: 該方法沒(méi)有返回值,也就是返回值為 None,而我也正是在這里犯錯(cuò)了
代碼案例:
"""test""" a = [4, 5, 6, 3, 2, 320, 5, 1] # 創(chuàng)建一個(gè)列表 print(a) # 打印列表,輸出為:[4, 5, 6, 3, 2, 320, 5, 1] print(a.sort()) # 輸出為:None print(a) # 輸出為:[1, 2, 3, 4, 5, 5, 6, 320] a = a.sort() print(a) # 輸出為:None
錯(cuò)用 a = a.sort(),以為可以把列表 a 按升序排列,其實(shí)只會(huì)把 a 變?yōu)?None,并不是真正想要的結(jié)果;正確做法是只要調(diào)用了 a.sort(),原列表 a 就變?yōu)橐粋€(gè)升序的列表了,就可以直接使用 a 了;
2. sorted:
sorted() 函數(shù)是Python中的內(nèi)置函數(shù)
語(yǔ)法: sorted(iterable=None, key=None, reverse=False)
共有三個(gè)參數(shù),后兩個(gè)參數(shù)和 list.sort() 方法中的參數(shù)意思沒(méi)有差別,第一個(gè)參數(shù)是一個(gè)可迭代對(duì)象
返回值:返回重新排列的列表
注意:和 list.sort() 方法不一樣的是,該函數(shù)不該變?cè)瓉?lái)的可迭代對(duì)象,如 a 為一個(gè)列表,sorted(a) ,并不會(huì)改變 a,只會(huì)返回一個(gè)排序后的新列表
代碼案例:
"""test""" a = [4, 5, 6, 3, 2, 320, 5, 1] # 創(chuàng)建一個(gè)列表 print(a) # 輸出:[4, 5, 6, 3, 2, 320, 5, 1] sorted(a) print(a) # 輸出:[4, 5, 6, 3, 2, 320, 5, 1],因?yàn)閟orted() 函數(shù)不會(huì)改變?cè)鹊牧斜? print(sorted(a)) # 輸出:[1, 2, 3, 4, 5, 5, 6, 320],因?yàn)?sorted() 函數(shù)返回一個(gè)排序好的列表 a = sorted(a) print(a) # 現(xiàn)在用 sorted 函數(shù)就可以這樣使用而不會(huì)出現(xiàn)錯(cuò)誤了,輸出:[1, 2, 3, 4, 5, 5, 6, 320]
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python調(diào)用AnythingLLM API使用流輸出的實(shí)現(xiàn)
本文主要介紹了Python調(diào)用AnythingLLM API使用流輸出的實(shí)現(xiàn),用于處理長(zhǎng)文本或?qū)崟r(shí)交互場(chǎng)景,文中通過(guò)示例代碼介紹的非常詳細(xì),需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-03-03
Django model 中設(shè)置聯(lián)合約束和聯(lián)合索引的方法
今天小編就為大家分享一篇Django model 中設(shè)置聯(lián)合約束和聯(lián)合索引的方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-08-08
Python實(shí)現(xiàn)無(wú)損放大圖片的示例代碼
這篇文章主要為大家詳細(xì)介紹了如何利用Python語(yǔ)言實(shí)現(xiàn)一個(gè)簡(jiǎn)單的無(wú)損放大圖片小程序,可以支持將JPG/PNG圖片無(wú)損放大上萬(wàn)像素,感興趣的可以了解一下2022-08-08
Python?numpy下幾種fft函數(shù)的使用方式
numpy中有一個(gè)fft的庫(kù),scipy中也有一個(gè)fftpack的庫(kù),各自都有fft函數(shù),兩者的用法基本是一致的,下面這篇文章主要給大家介紹了關(guān)于Python?numpy下幾種fft函數(shù)的使用方式,需要的朋友可以參考下2022-08-08
python3實(shí)現(xiàn)常見(jiàn)的排序算法(示例代碼)
排序是非常常見(jiàn)的排序算法,今天給大家分享幾種比較常見(jiàn)的排序算法,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2021-07-07
卷積神經(jīng)網(wǎng)絡(luò)CharCNN實(shí)現(xiàn)中文情感分類任務(wù)
這篇文章主要為大家介紹了卷積神經(jīng)網(wǎng)絡(luò)CharCNN實(shí)現(xiàn)中文情感分類任務(wù)詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04
golang/python實(shí)現(xiàn)歸并排序?qū)嵗a
這篇文章主要給大家介紹了關(guān)于golang/python實(shí)現(xiàn)歸并排序的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
Python PIL庫(kù)Image函數(shù)的基本圖像處理操作實(shí)例
這篇文章主要為大家介紹了Python PIL庫(kù)Image函數(shù)的基本圖像處理操作實(shí)例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2024-01-01
對(duì)python numpy數(shù)組中冒號(hào)的使用方法詳解
下面小編就為大家分享一篇對(duì)python numpy數(shù)組中冒號(hào)的使用方法詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2018-04-04

