python中,如图,排序sort为啥不用赋值给一个中间变量就能打出来?下面语句为啥又不行? 关于Python中sort函数赋值的问题

python\u4e24\u4e2a\u7b80\u5355\u7684\u4ee3\u7801\u3002\u4e3a\u4ec0\u4e48\u6709\u7684\u65b9\u6cd5\u8981\u8d4b\u503c\u6709\u7684\u4e0d\u7528\u5462\uff1f\u600e\u4e48\u533a\u522b\uff1f

\u6570\u636e\u7c7b\u578b\u4e0d\u540c\u3002
\u7b2c\u4e00\u4e2a\u662flist\uff08\u5217\u8868\uff09\u6570\u636e\u7c7b\u578b\uff0c\u5bf9\u5b83\u672c\u8eab\u505a.sort()\u64cd\u4f5c\u540e\uff0c\u5217\u8868\u5185\u90e8\u7684\u5143\u7d20\u6392\u5217\u5df2\u7ecf\u53d8\u5316\u4e86\uff0c\u867d\u7136\u5217\u8868\u540d\u79f0\u5e76\u6ca1\u6709\u53d8\u3002\u56e0\u4e3a\u5217\u8868\u540d\u79f0\u53ea\u4e0d\u8fc7\u662f\u5217\u8868\u7684\u9996\u5730\u5740\u800c\u5df2\uff0c\u4e0d\u662f\u5217\u8868\u7684\u5185\u5bb9\u672c\u8eab\u3002
\u7b2c\u4e8c\u4e2a\u662f\u5b57\u7b26\u4e32\u6570\u636e\u7c7b\u578b\uff0c\u5bf9\u5b83\u672c\u8eab\u505a.title()\u64cd\u4f5c\u540e\uff0c\u5982\u679c\u4e0d\u8d4b\u503c\u7684\u8bdd\uff0c\u539f\u6765\u7684\u5b57\u7b26\u4e32\u8fd8\u662f\u539f\u6765\u7684\u5b57\u7b26\u4e32\uff0c\u8fd9\u548c\u4e0a\u9762\u7684\u5217\u8868\u4e0d\u4e00\u6837\u3002\u5b57\u7b26\u4e32\u53d8\u91cf\u5c31\u4ee3\u8868\u4e86\u5b57\u7b26\u4e32\u7684\u5185\u5bb9\u3002
\uff08\u5982\u6709\u5e2e\u52a9\uff0c\u70e6\u8bf7\u91c7\u7eb3\uff0c\u8c22\u8c22\uff01\uff09

Python\u4e2d\u7684sort()\u65b9\u6cd5\u7528\u4e8e\u6570\u7ec4\u6392\u5e8f\uff0c\u672c\u6587\u4ee5\u5b9e\u4f8b\u5f62\u5f0f\u5bf9\u6b64\u52a0\u4ee5\u8be6\u7ec6\u8bf4\u660e\uff1a
\u4e00\u3001\u57fa\u672c\u5f62\u5f0f
\u5217\u8868\u6709\u81ea\u5df1\u7684sort\u65b9\u6cd5\uff0c\u5176\u5bf9\u5217\u8868\u8fdb\u884c\u539f\u5740\u6392\u5e8f\uff0c\u65e2\u7136\u662f\u539f\u5740\u6392\u5e8f\uff0c\u90a3\u663e\u7136\u5143\u7ec4\u4e0d\u53ef\u80fd\u62e5\u6709\u8fd9\u79cd\u65b9\u6cd5\uff0c\u56e0\u4e3a\u5143\u7ec4\u662f\u4e0d\u53ef\u4fee\u6539\u7684\u3002


123

x = [4, 6, 2, 1, 7, 9]x.sort()print x # [1, 2, 4, 6, 7, 9]


\u5982\u679c\u9700\u8981\u4e00\u4e2a\u6392\u5e8f\u597d\u7684\u526f\u672c\uff0c\u540c\u65f6\u4fdd\u6301\u539f\u6709\u5217\u8868\u4e0d\u53d8\uff0c\u600e\u4e48\u5b9e\u73b0\u5462


12345

x =[4, 6, 2, 1, 7, 9]y = x[ : ]y.sort()print y #[1, 2, 4, 6, 7, 9]print x #[4, 6, 2, 1, 7, 9]


\u6ce8\u610f\uff1ay = x[:] \u901a\u8fc7\u5206\u7247\u64cd\u4f5c\u5c06\u5217\u8868x\u7684\u5143\u7d20\u5168\u90e8\u62f7\u8d1d\u7ed9y\uff0c\u5982\u679c\u7b80\u5355\u7684\u628ax\u8d4b\u503c\u7ed9y\uff1ay = x\uff0cy\u548cx\u8fd8\u662f\u6307\u5411\u540c\u4e00\u4e2a\u5217\u8868\uff0c\u5e76\u6ca1\u6709\u4ea7\u751f\u65b0\u7684\u526f\u672c\u3002
\u53e6\u4e00\u79cd\u83b7\u53d6\u5df2\u6392\u5e8f\u7684\u5217\u8868\u526f\u672c\u7684\u65b9\u6cd5\u662f\u4f7f\u7528sorted\u51fd\u6570\uff1a


1234

x =[4, 6, 2, 1, 7, 9]y = sorted(x)print y #[1, 2, 4, 6, 7, 9]print x #[4, 6, 2, 1, 7, 9]


sorted\u8fd4\u56de\u4e00\u4e2a\u6709\u5e8f\u7684\u526f\u672c\uff0c\u5e76\u4e14\u7c7b\u578b\u603b\u662f\u5217\u8868\uff0c\u5982\u4e0b\uff1a


1

print sorted('Python') #['P', 'h', 'n', 'o', 't', 'y']


\u4e8c\u3001\u81ea\u5b9a\u4e49\u6bd4\u8f83\u51fd\u6570
\u53ef\u4ee5\u5b9a\u4e49\u81ea\u5df1\u7684\u6bd4\u8f83\u51fd\u6570\uff0c\u7136\u540e\u901a\u8fc7\u53c2\u6570\u4f20\u9012\u7ed9sort\u65b9\u6cd5\uff1a


12345678910111213

def comp(x, y):if x y:return -1else:return 0 nums = [3, 2, 8 ,0 , 1]nums.sort(comp)print nums # \u964d\u5e8f\u6392\u5e8f[8, 3, 2, 1, 0]nums.sort(cmp) # \u8c03\u7528\u5185\u5efa\u51fd\u6570cmp \uff0c\u5347\u5e8f\u6392\u5e8fprint nums # \u964d\u5e8f\u6392\u5e8f[0, 1, 2, 3, 8]


\u4e09\u3001\u53ef\u9009\u53c2\u6570
sort\u65b9\u6cd5\u8fd8\u6709\u4e24\u4e2a\u53ef\u9009\u53c2\u6570\uff1akey\u548creverse

1\u3001key\u5728\u4f7f\u7528\u65f6\u5fc5\u987b\u63d0\u4f9b\u4e00\u4e2a\u6392\u5e8f\u8fc7\u7a0b\u603b\u8c03\u7528\u7684\u51fd\u6570\uff1a


123

x = ['mmm', 'mm', 'mm', 'm' ]x.sort(key = len)print x # ['m', 'mm', 'mm', 'mmm']


2\u3001reverse\u5b9e\u73b0\u964d\u5e8f\u6392\u5e8f\uff0c\u9700\u8981\u63d0\u4f9b\u4e00\u4e2a\u5e03\u5c14\u503c\uff1a


123
y = [3, 2, 8 ,0 , 1]y.sort(reverse = True)print y #[8, 3, 2, 1, 0]

list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值。
所以不需要创建变量接收。
你也可以理解为sort()改变的原来的列表,不会产生新的列表。

sort是带有副作用的函数,是把原来的列表排序
sorted 是创建新的排序的列表,不影响原来的列表

sort是一个函数不需要赋值
对象才需要赋值

sort函数就是一个操作函数,它的返回值就是标识操作有没有成功

  • sort鍦╬ython涓鐨勭敤娉
    绛旓細sort鍦╬ython涓殑鐢ㄦ硶鏄鎺掑簭鍒楄〃銆鍦╬ython涓紝sort鏄垪琛ㄦ帓搴忕殑涓绉嶆柟娉曪紝璋冪敤鏂瑰紡涓簂ist.sort锛堬級锛岃繖鏍蜂細鏀瑰彉鍘熸潵鍒楄〃鐨勫笺俿ort锛坘ey锛宺everse锛夋柟娉曟湁key鍜宺everse涓ょ鍙傛暟锛屽叾涓璳ey琛ㄧず鐨勬槸鎺掑簭鐨勫叧閿瓧锛宺everse琛ㄧず鐨勬槸鎺掑簭鐨勬柟寮忥紙reverse=False琛ㄧず鍗囧簭鍜宺everse=True琛ㄧず闄嶅簭锛夈俿ort锛堬級鏂规硶榛樿鏄...
  • python鎬庝箞瀵硅緭鍏ョ殑鏁板強涔嬮棿鐨勬暟缁勮繘琛屾帓鍒?
    绛旓細浣犲彲浠ヤ娇鐢Python鍐呯疆鐨剆orted()鍑芥暟瀵硅緭鍏ョ殑鏁板瓧鍜屾暟缁勮繘琛鎺掑簭銆俿orted()鍑芥暟鍙互鎺ュ彈涓涓彲杩唬瀵硅薄浣滀负鍙傛暟锛屽苟杩斿洖涓涓柊鐨勫凡鎺掑簭鐨勫垪琛ㄣ備緥濡傦紝濡傛灉浣犳湁涓涓寘鍚暟瀛楀拰鏁扮粍鐨勫垪琛紝浣犲彲浠ヤ娇鐢ㄤ互涓嬩唬鐮佸鍏惰繘琛屾帓搴忥細my_list = [3, 1, 4, [1, 5, 9], [2, 6, 5, 3]]sorted_list = ...
  • sort鍦╬ython涓鐨勫惈涔
    绛旓細鍦ㄨ繖涓緥瀛涓紝鎴戜滑鍚屾牱浣跨敤sort鍑芥暟瀵筺umbers鍒楄〃杩涜鎺掑簭锛浣嗚繖娆℃垜浠皢reverse鍙傛暟璁剧疆涓篢rue锛岃繖鏍峰氨浼氬緱鍒颁竴涓檷搴忔帓鍒楃殑鍒楄〃銆俿ort鍑芥暟杩樻敮鎸佽嚜瀹氫箟鎺掑簭瑙勫垯锛屽埄鐢╧ey鍙傛暟鍙互浼犻掍竴涓嚱鏁版潵鎸囧畾鎺掑簭鏂瑰紡銆python鐨鐗圭偣 绠鍗曪細Python鏄竴绉嶄唬琛ㄧ畝鍗曚富涔夋濇兂鐨勮瑷銆傞槄璇讳竴涓壇濂界殑Python绋嬪簭灏辨劅瑙夊儚鏄湪璇...
  • python涓sort鏄粈涔堟剰鎬
    绛旓細python涓sort()鍑芥暟鐢ㄤ簬瀵瑰師鍒楄〃杩涜鎺掑簭,濡傛灉鎸囧畾鍙傛暟,鍒欎娇鐢ㄦ瘮杈冨嚱鏁版寚瀹氱殑姣旇緝鍑芥暟銆傚垪琛ㄦ湁鑷繁鐨剆ort鏂规硶锛屽叾瀵瑰垪琛ㄨ繘琛屽師鍧鎺掑簭锛鏃㈢劧鏄師鍧鎺掑簭锛岄偅鏄剧劧鍏冪粍涓嶅彲鑳芥嫢鏈夎繖绉嶆柟娉曪紝鍥犱负鍏冪粍鏄笉鍙慨鏀圭殑銆侾ython鐢辫嵎鍏版暟瀛﹀拰璁$畻鏈虹瀛︾爺绌跺浼氱殑鍚夊路鑼冪綏鑻忓浜1990骞翠唬鍒濊璁★紝浣滀负涓闂ㄥ彨鍋欰BC璇█鐨...
  • python瀛楁瘝椤哄簭鎺掑簭
    绛旓細Python瀛楁瘝椤哄簭鎺掑簭鐨勭瓟妗堟槸浣跨敤鍐呯疆鐨剆ort鍑芥暟鎴杝orted鍑芥暟銆備竴銆Python涓鐨勬帓搴忓姛鑳 Python鎻愪緵浜嗗嚑绉嶅瀛楁瘝杩涜鎺掑簭鐨勬柟娉曘傚叾涓紝鏈甯哥敤鐨勬柟娉曟槸浣跨敤鍒楄〃鐨剆ort鍑芥暟鍜屽唴缃殑sorted鍑芥暟銆傝繖涓や釜鍑芥暟閮藉彲浠ュ鍒楄〃涓殑鍏冪礌杩涜鎺掑簭锛鍖呮嫭瀛楃涓插拰瀛楃銆備簩銆乻ort鍑芥暟鐨勪娇鐢 sort鍑芥暟鏄垪琛ㄧ殑涓涓柟娉曪紝瀹冨彲浠ュ...
  • 濡備綍鐢Python瀹炵幇鍏ぇ鎺掑簭绠楁硶
    绛旓細杩欑瘒鏂囩珷涓昏浠嬬粛浜嗗叓澶鎺掑簭绠楁硶鐨Python瀹炵幇锛屽鍏ぇ鎺掑簭绠楁硶杩涜璇︾粏鎻忚堪鍜屼唬鐮佸疄鐜帮紝鎰熷叴瓒g殑灏忎紮浼翠滑鍙互鍙傝冧竴涓婸ython瀹炵幇鍏ぇ鎺掑簭绠楁硶锛屽叿浣撳唴瀹瑰涓1銆佹彃鍏ユ帓搴忔弿杩版彃鍏ユ帓搴忕殑鍩烘湰鎿嶄綔灏辨槸灏嗕竴涓暟鎹彃鍏ュ埌宸茬粡鎺掑ソ搴忕殑鏈夊簭鏁版嵁涓紝浠庤屽緱鍒颁竴涓柊鐨勩佷釜鏁板姞涓鐨勬湁搴忔暟鎹紝绠楁硶閫傜敤浜庡皯閲忔暟鎹殑鎺掑簭...
  • python涓浠庡ぇ鍒板皬鎺掑簭鐨勫嚱鏁
    绛旓細1銆佺ず渚嬩唬鐮 def bigToSmall(uList):uList.sort()print(uList)uList.sort(reverse=True)print(uList)amn = [34, 56, 78, 12, 31, 45, 67, 77, 35]bigToSmall(amn)2銆佺ず渚嬬粨鏋 [12, 31, 34, 35, 45, 56, 67, 77, 78][78, 77, 67, 56, 45, 35, 34, 31, 12]
  • 閫夋嫨鎺掑簭python浠g爜
    绛旓細2銆佽緭鍏rint鍒楄〃鍚嶅嵆鍙緱鍒鎺掑簭鍚庣殑鍒楄〃鏁版嵁銆傚掑簭鍙互鐢ㄨ繖涓猺everse鏂规硶锛屾妸鍏冪礌浣嶇疆鍊掕浆杩囨潵銆傜劧鍚庡啀娆rint鍒楄〃鍚嶏紝杩欐牱灏变細寰楀埌鍊掕浆椤哄簭涔嬪悗鐨勫垪琛ㄦ暟鎹濡傚浘涓ょ浉瀵规瘮鍗冲疄鐜颁簡浠庨珮鍒颁綆鍜屼粠浣庡埌楂樻帓搴忋3銆鍦 Python 涓紝瀵逛簬涓や釜闆嗗悎 A 鍜 B锛屽畠浠殑骞堕泦鍙互浣跨敤 union() 鏂规硶鎴栬 | 杩愮畻绗﹀疄鐜般
  • Python涓鐢╯ort()鍐欏嚭浜х敓涓涓0~100闂撮殢鏈烘暣鏁,骞跺垪鍑烘渶澶у拰鏈灏忓厓 ...
    绛旓細鍙互浣跨敤 Python 涓鐨 random 妯″潡鏉ョ敓鎴 0 鍒 100 涔嬮棿鐨勯殢鏈烘暣鏁帮紝鍐嶄娇鐢 sort() 鏂规硶瀵归殢鏈烘暟鍒楄〃杩涜鎺掑簭锛鏈鍚庤緭鍑烘渶澶у煎拰鏈灏忓煎嵆鍙備笅闈㈡槸涓涓ず渚嬩唬鐮侊細import random 鐢熸垚 10 涓 0 鍒 100 涔嬮棿鐨勯殢鏈烘暣鏁 random_list = [random.randint(0, 100) for _ in range(10)]瀵归殢鏈烘暟鍒楄〃...
  • Python闂 濡傚浘,lists閮借兘杈撳嚭浜,涓轰粈涔鎺掑簭鍚庣殑缁撴灉涓篘one?姹傚ぇ绁...
    绛旓細List.sort() 鏄拡瀵瑰垪琛ㄨ嚜宸卞唴閮ㄨ繘琛鎺掑簭锛涓嶄細鏈夎繑鍥炲硷紝鍥犳杩斿洖涓篘one銆備互涓嬪啓娉曞潎浼氳繑鍥濶one锛歛 = lists.sort()print( lists.sort() )return lists.sort()瑙e喅鏂规硶灏辨槸灏嗘帓搴忚鍙ュ崟鐙綔涓轰竴琛屻傛垨鑰呬娇鐢╯orted(list) 鍑芥暟銆
  • 扩展阅读:学python后到底能干什么 ... 快排 python ... python初学编程必背 ... python代码大全 ... python一共有几级 ... python excel pandas ... python中排序从小到大 ... python怎么对列表进行排序 ... 小学生学python还是c++ ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网