ホームページ >バックエンド開発 >Python チュートリアル >Pythonのsortメソッドの使い方を詳しく解説

Pythonのsortメソッドの使い方を詳しく解説

不言
不言オリジナル
2018-04-09 17:24:413434ブラウズ

この記事では主に Python の sort メソッドを紹介します。必要な方は参考にしてください。

Python の sort() メソッドは、例の形式で詳しく説明します。 . 基本形式

リストには、リストをその場でソートする独自のソートメソッドがあります。タプルは変更できないため、タプルがこのメソッドを持てないことは明らかです。

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

元のリストを変更せずにソートされたコピーが必要な場合、それを実現する方法


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]

注:

y = x[:] シャーディング操作によってリストを分割する すべての要素x を y にコピーするだけの場合: y = x、y と x は同じリストを指し、新しいコピーは生成されません

並べ替えられたリストのコピーを取得する別の方法は、sorted 関数を使用することです:


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 は並べ替えられたコピーを返し、次のように型は常にリストです:


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

2. カスタム比較関数

独自の比較関数を定義し、パラメーターを介してsortメソッドに渡すことができます:


def comp(x, y):
if x < y:
return 1
elif x > y:
return -1
else:
return 0

nums = [3, 2, 8 ,0 , 1]
nums.sort(comp)
print nums # 降序排序[8, 3, 2, 1, 0]
nums.sort(cmp) # 调用内建函数cmp ,升序排序
print nums # 降序排序[0, 1, 2, 3, 8]

3. さらに 2 つのオプションのパラメーターがあります。並べ替え方法のオプション パラメータを選択します: key と reverse

1. key を使用する場合、並べ替えプロセスによって呼び出される関数を提供する必要があります:

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


2。ブール値:

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



以上がPythonのsortメソッドの使い方を詳しく解説の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。