sorted(iterable, key=None, reverse=False) 和 reversed(iterable)函 數可以處理任何可迭代對象,返回一個排序或反轉的迭代器。方法 list.sort(key=None, reverse=False) 和 list.reverse()只是列表的內置方法,對原列表操作無返回值。
s = [3, 6, 2, 7, 1, 9]print(sorted(s)) print(s.sort()) print(s) for n in word.reverse():print(w)for n in reversed(word):print(n)補充個 sorted 的用法,可以了解下sorded 的複雜用法:def topKFrequent(self, words, k): dic = {} for word in words: dic[word] = dic.get(word, 0) + 1 ret = sorted(dic, key=lambda word: (-dic[word], word)) return ret[:k] 其形式為 lambda argument_list: expression這裡的 argument_list 是參數列表,這裡的 expression 是一個關於參數的表達式,表達式中出現的參數需要在 argument_list 中有定義,並且表達式只能是單行的,所以 lamdba 的輸入是傳入到參數列表 argument_list 的值,輸出是根據表達式 expression 計算得到的值。這裡的 word 表示匿名函數的輸入,其實就是前面 iterable 的每一個迭代對象,即字典中的每個 key(不指定 items()或 values()時默認指的是 key),(-dic[word], word)) 表示匿名函數的輸出,即輸出了一個元組,對這個元組進行排序,用元組是因為題目要求,如果出現頻率相同的,要按照字母先後進行排序,所以-dic[word] 相同的情況下,根據 word 排序。