Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Sorted(): Fungsi kegemaran saya dalam Python

Sorted(): Fungsi kegemaran saya dalam Python

WBOY
WBOYke hadapan
2023-09-05 20:21:031248semak imbas

Sorted(): Fungsi kegemaran saya dalam Python

Pengenalan

Dalam Python, fungsi sorted() ialah salah satu kaedah paling asas lagi berguna yang perlu anda ketahui untuk mula mengisih. Fungsi ini boleh digunakan untuk mengisih elemen objek boleh lelar, seperti senarai, rentetan, dsb. Fungsi ini menyusun rentetan dan nombor. Secara lalai, ia diisih dalam tertib menaik, tetapi ia juga boleh diisih dalam tertib menurun.

Cara menggunakan fungsi Sorted()

  • Gunakan fungsi Sorted() untuk mengisih nombor

  • Isih senarai, tupel, set dan kamus

  • Isih rentetan

  • Isih dalam fungsi lambda

Kaedah 1: Isih nombor menggunakan fungsi Sorted()

Pelaksanaan paling asas bagi fungsi

sorted() adalah untuk mengisih koleksi integer (ditandatangani atau tidak ditandatangani). Ini boleh dilakukan dalam susunan menaik atau menurun.

Tatabahasa

print(sorted([n1, n2, n3, n4]))

Sintaksnya sangat mudah. Kami hanya menghantar nombor yang ingin kami isi sebagai hujah kepada fungsi isihan dan ia akan mengembalikan nombor dalam susunan yang disusun. Untuk mengisih dalam tertib menurun, kita perlu menambah perkataan "terbalik" selepas senarai nombor. Satu perkara yang perlu diperhatikan di sini ialah nombor mesti diletakkan dalam bekas yang boleh diulang untuk kaedah ini berfungsi.

Algoritma

Langkah 1 - Panggil fungsi sorted()

Langkah 2 - Lulus senarai nombor sebagai parameter dan gunakan kata kunci "terbalik" jika perlu

Langkah 3 - Kembalikan atau cetak

Terjemahan bahasa Cina bagi

Contoh

ialah:

Contoh

print(sorted([4, 1, 3, 2]))

Output

[1, 2, 3, 4] 

Kaedah 2: Isih senarai, tupel, set dan kamus

Kandungan jujukan (seperti senarai, tupel, rentetan) dan set (seperti set, set beku dan set data) boleh diisih menggunakan kaedah sorted(). Fungsi ini adalah sebahagian daripada perpustakaan terbina dalam Python, jadi anda boleh menyusun sesuatu dengan mudah tanpa menulis banyak kod.

Tatabahasa

define x=container/set
return(sorted(x))

Sintaks mudah ini ialah salah satu sebab kegemaran saya untuk fungsi sorted() dan ia sangat mudah untuk digunakan. Untuk mengisih kandungan sebarang jenis iterator, kami mula-mula mengisytiharkan iterator, seperti senarai, set, dsb. Iterator ini kemudiannya dihantar ke fungsi, yang kemudiannya mengembalikan kandungan yang diisih.

Algoritma

Langkah 1 - Mulakan lelaran dengan elemen yang anda ingin susun

Langkah 2 - Lulus iterator sebagai hujah kepada kaedah sorted(), bersama-sama dengan kunci dan pengesahan menaik atau menurun

Langkah 3 - Cetak atau pulangkan nilai

Terjemahan bahasa Cina bagi

Contoh

ialah:

Contoh

# List
x = ['z', 'g', 'e', 'o', 't', 'y']
print(sorted(x))

# Tuple
x = ('z', 'g', 'e', 'o', 'd', 'k')
print(sorted(x))

# Dictionary
x = {'z': 1, 'p': 2, 'e': 12, 'h': 8, 'k': 7, 'y': 3}
print(sorted(x))

# Set
x = {'x', 'w', 'h', 'd', 'k', 'b'}
print(sorted(x))

# Frozen Set
x = frozenset(("v", "m", "d", "u", "s", "c"))
print(sorted(x))

Output

['e', 'g', 'o', 't', 'y', 'z']
['d', 'e', 'g', 'k', 'o', 'z']
['e', 'h', 'k', 'p', 'y', 'z']
['b', 'd', 'h', 'k', 'w', 'x']
['c', 'd', 'm', 's', 'u', 'v'] 

Kaedah 3: Pengisihan rentetan

Ketersediaan fungsi sorted() tidak terhad kepada nombor, tetapi juga boleh digunakan untuk rentetan. Rentetan boleh diisih secara leksikografi menggunakan nilai ASCII, dan boleh diisih dalam tertib menaik dan menurun. Dengan cara ini, kita juga boleh membalikkan rentetan selepas mengisih atau melaksanakan aplikasi lain.

Tatabahasa

res = ''.join(sorted(test_string, reverse = True))

Ini ialah sintaks untuk membalikkan rentetan, kami menggunakan fungsi gabungan dan kaedah sorted(), sambil menetapkan bendera terbalik kepada True. Ini memastikan bahawa rentetan diterbalikkan dan diisih dalam tertib menurun.

Algoritma

Langkah 1− Mulakan rentetan untuk pembalikan

Langkah 2 - Panggil kaedah join() dan sorted()

Langkah 3 - Hantar rentetan dan songsang bendera ke fungsi sorted()

Terjemahan bahasa Cina bagi

Contoh

ialah:

Contoh

test_string = "tutorialspoint"
print("The original string : " + str(test_string))
res = ''.join(sorted(test_string, reverse = True))
print("String after reverse sorting : " + str(res))

Output

The original string : tutorialspoint
String after reverse sorting : utttsrpoonliia 

Kaedah 4: Isih dalam fungsi lambda

Fungsi Lambda ialah sejenis fungsi tanpa nama dalam Python. Ia diisytiharkan menggunakan kata kunci lambda dan boleh mengandungi hanya satu ungkapan, tetapi boleh mengandungi bilangan argumen yang tidak terhad.

Tatabahasa

res = functools.reduce(lambda x, y: x + y,
 sorted(test_string, reverse=True))

Hasil pengisihan dan pembalikan rentetan ujian boleh diperhatikan melalui sintaks di atas, di mana kami menggunakan fungsi reduce(). Fungsi isihan digunakan untuk melaksanakan pengisihan sebenar, manakala fungsi lambda mengambil dua input dan mengembalikan jumlahnya sebagai output fungsi.

Algoritma

Langkah 1 - Import modul functools

Langkah 2 - Tentukan rentetan ujian

Langkah 3 - Hantar rentetan ujian ke fungsi reduce() mengikut tatabahasa

Langkah 4 - Cetak rentetan terbalik

Terjemahan bahasa Cina bagi

Contoh

ialah:

Contoh

# import the module
import functools
test_string = "tutorialspoint"
print("The original string : " + str(test_string))
res = functools.reduce(lambda x, y: x + y,  sorted(test_string,  reverse=True))
print("String after reverse sorting : " + str(res))

Output

The original string : tutorialspoint
String after reverse sorting : utttsrpoonliia 

Kesimpulan

Dalam artikel ini, kami mempelajari tentang pelbagai kegunaan fungsi sorted(). Kepelbagaian dan aplikasi mudah ciri ini menjadikannya sesuai untuk kegunaan awal dalam banyak proses. Mungkin terdapat beberapa kes penggunaan lain untuk fungsi ini, walaupun kesemuanya tidak boleh dibincangkan di sini. Saya harap artikel ini membantu dalam mempelajari fungsi yang sangat berguna dalam Python!

Atas ialah kandungan terperinci Sorted(): Fungsi kegemaran saya dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:tutorialspoint.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam