ホームページ  >  記事  >  バックエンド開発  >  Python でソートを使用する方法の例を共有する

Python でソートを使用する方法の例を共有する

零下一度
零下一度オリジナル
2017-05-25 11:12:222008ブラウズ

この記事では主に 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 にコピーします x を割り当てますto 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. オプションのパラメータ

sortメソッドには、

key

とreverseの2つのオプションのパラメータもあります。 1. キーを使用する場合、並べ替えプロセスによって呼び出される関数を提供する必要があります:

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. 降順並べ替えを実装するには、reverse にブール値を提供する必要があります:
y = [3, 2, 8 ,0 , 1]
y.sort(reverse = True)
print y #[8, 3, 2, 1, 0]

[関連する推奨事項]

1 の詳細な説明。 Pythonメソッドでのsort()の使用

2. Pythonでのvalues()の使用に関する詳細なチュートリアル

3. pandas DataFrameでのsort_valuesの使用例

以上がPython でソートを使用する方法の例を共有するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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