Rumah > Artikel > pembangunan bahagian belakang > Sorted(): Fungsi kegemaran saya dalam Python
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.
Gunakan fungsi Sorted() untuk mengisih nombor
Isih senarai, tupel, set dan kamus
Isih rentetan
Isih dalam fungsi lambda
sorted() adalah untuk mengisih koleksi integer (ditandatangani atau tidak ditandatangani). Ini boleh dilakukan dalam susunan menaik atau menurun.
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.
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 bagiprint(sorted([4, 1, 3, 2]))
[1, 2, 3, 4]
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.
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.
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# 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))
['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']
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.
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.
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 bagitest_string = "tutorialspoint" print("The original string : " + str(test_string)) res = ''.join(sorted(test_string, reverse = True)) print("String after reverse sorting : " + str(res))
The original string : tutorialspoint String after reverse sorting : utttsrpoonliia
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.
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.
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# 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))
The original string : tutorialspoint String after reverse sorting : utttsrpoonliia
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!