


Pengisihan senarai: Penjelasan terperinci tentang kaedah pengisihan, disusun dan numpy.argsort Python
Dalam pengaturcaraan Python, selalunya perlu mengisih senarai atau tatasusunan. Python menyediakan pelbagai kaedah pengisihan, termasuk isihan, diisih, numpy.argsort, dsb. Artikel ini akan memperkenalkan secara terperinci penggunaan dan langkah berjaga-jaga bagi kaedah pengisihan ini.
1. Kaedah isihan
Kaedah isihan ialah kaedah terbina dalam senarai Python Ia boleh mengisih senarai di tempatnya (iaitu, ia mengembalikan nilai tetapi tidak menghasilkan objek isihan baharu). , dan tidak memerlukan perpustakaan import tambahan. Kaedah isihan mempunyai dua parameter: kunci dan terbalik. kekunci menunjukkan kekunci yang digunakan semasa mengisih, dan terbalik menunjukkan sama ada hendak melakukan pengisihan terbalik. Contohnya:
my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5] my_list.sort() print(my_list) # 输出 [1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9] my_list.sort(reverse=True) print(my_list) # 输出 [9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1] my_list = ["apple", "banana", "cherry", "orange"] my_list.sort(key=lambda x: len(x)) print(my_list) # 输出 ["apple", "cherry", "orange", "banana"]
Dalam contoh di atas, contoh pertama mengisih senarai integer, contoh kedua mengisih senarai dalam susunan terbalik dan contoh ketiga menggunakan ungkapan lambda untuk mengisih senarai rentetan mengikut panjang.
Perlu diambil perhatian bahawa kaedah isihan telah disediakan, yang akan mengubah susunan senarai asal Nilai pulangan ialah Tiada, jadi anda tidak boleh terus melakukan operasi pada senarai yang diisih a Buat salinan atau gunakan kaedah lain untuk menyimpan hasil yang diisih.
2. Fungsi diisih
Fungsi diisih ialah fungsi terbina dalam Python yang boleh mengisih senarai, tuple, rentetan, dsb., dan mengembalikan objek diisih baharu tanpa mengubah objek input asal. Parameter fungsi isihan adalah sama dengan kaedah isihan, termasuk kunci dan terbalik. Contohnya:
my_list = [3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5] new_list = sorted(my_list) print(new_list) # 输出 [1, 1, 2, 3, 3, 4, 5, 5, 5, 6, 9] new_list = sorted(my_list, reverse=True) print(new_list) # 输出 [9, 6, 5, 5, 5, 4, 3, 3, 2, 1, 1] my_list = ["apple", "banana", "cherry", "orange"] new_list = sorted(my_list, key=lambda x: len(x)) print(new_list) # 输出 ["apple", "cherry", "orange", "banana"]
Nilai pulangan bagi fungsi yang diisih boleh menjadi senarai, tuple, rentetan, dll. Jenis hasil pulangan ditentukan berdasarkan jenis input.
3. Kaedah numpy.argsort
Kaedah numpy.argsort ialah kaedah dalam numpy, terutamanya digunakan untuk mengisih tatasusunan numpy. Kaedah argsort mengembalikan subskrip yang diisih. Parameter kaedah numpy.argsort juga adalah kunci dan terbalik. Contohnya:
import numpy as np my_array = np.array([3, 1, 4, 1, 5, 9, 2, 6, 5, 3, 5]) sort_index = np.argsort(my_array) print(sort_index) # 输出 [1 3 6 0 9 2 4 8 7 5 10] sort_index = np.argsort(-my_array) print(sort_index) # 输出 [5 7 4 2 0 3 6 8 9 1 10] my_array = np.array(["apple", "banana", "cherry", "orange"]) sort_index = np.argsort([len(x) for x in my_array]) print(sort_index) # 输出 [0 2 3 1]
Dalam contoh di atas, contoh pertama mengisih tatasusunan numpy dalam tertib menaik dan mengembalikan subskrip yang diisih. Dalam contoh kedua, untuk mengisih dalam tertib menurun, anda perlu menyongsangkan tatasusunan. Contoh ketiga menyusun tatasusunan rentetan mengikut panjang.
Perlu diambil perhatian bahawa kaedah numpy.argsort mengembalikan senarai subskrip dan anda perlu menggunakan subskrip untuk mendapatkan hasil pengisihan.
Ringkasan:
Artikel ini terutamanya memperkenalkan kaedah isihan, diisih dan numpy.argsort dalam Python, yang boleh digunakan untuk mengisih senarai dan tatasusunan dalam Python. Kaedah isihan dan fungsi diisih boleh mengisih objek terbina dalam Python, dan kaedah numpy.argsort ialah kaedah dalam numpy, terutamanya digunakan untuk mengisih tatasusunan numpy. Kaedah ini boleh menggunakan parameter seperti kunci dan terbalik untuk mengawal tingkah laku pengisihan yang berbeza harus dipilih mengikut keperluan.
Atas ialah kandungan terperinci Pengisihan senarai: Penjelasan terperinci tentang kaedah pengisihan, disusun dan numpy.argsort Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Python cemerlang dalam automasi, skrip, dan pengurusan tugas. 1) Automasi: Sandaran fail direalisasikan melalui perpustakaan standard seperti OS dan Shutil. 2) Penulisan Skrip: Gunakan Perpustakaan Psutil untuk memantau sumber sistem. 3) Pengurusan Tugas: Gunakan perpustakaan jadual untuk menjadualkan tugas. Kemudahan penggunaan Python dan sokongan perpustakaan yang kaya menjadikannya alat pilihan di kawasan ini.

Untuk memaksimumkan kecekapan pembelajaran Python dalam masa yang terhad, anda boleh menggunakan modul, masa, dan modul Python. 1. Modul DateTime digunakan untuk merakam dan merancang masa pembelajaran. 2. Modul Masa membantu menetapkan kajian dan masa rehat. 3. Modul Jadual secara automatik mengatur tugas pembelajaran mingguan.

Python cemerlang dalam permainan dan pembangunan GUI. 1) Pembangunan permainan menggunakan pygame, menyediakan lukisan, audio dan fungsi lain, yang sesuai untuk membuat permainan 2D. 2) Pembangunan GUI boleh memilih tkinter atau pyqt. TKInter adalah mudah dan mudah digunakan, PYQT mempunyai fungsi yang kaya dan sesuai untuk pembangunan profesional.

Python sesuai untuk sains data, pembangunan web dan tugas automasi, manakala C sesuai untuk pengaturcaraan sistem, pembangunan permainan dan sistem tertanam. Python terkenal dengan kesederhanaan dan ekosistem yang kuat, manakala C dikenali dengan keupayaan kawalan dan keupayaan kawalan yang mendasari.

Anda boleh mempelajari konsep pengaturcaraan asas dan kemahiran Python dalam masa 2 jam. 1. Belajar Pembolehubah dan Jenis Data, 2.

Python digunakan secara meluas dalam bidang pembangunan web, sains data, pembelajaran mesin, automasi dan skrip. 1) Dalam pembangunan web, kerangka Django dan Flask memudahkan proses pembangunan. 2) Dalam bidang sains data dan pembelajaran mesin, numpy, panda, scikit-learn dan perpustakaan tensorflow memberikan sokongan yang kuat. 3) Dari segi automasi dan skrip, Python sesuai untuk tugas -tugas seperti ujian automatik dan pengurusan sistem.

Anda boleh mempelajari asas -asas Python dalam masa dua jam. 1. Belajar pembolehubah dan jenis data, 2. Struktur kawalan induk seperti jika pernyataan dan gelung, 3 memahami definisi dan penggunaan fungsi. Ini akan membantu anda mula menulis program python mudah.

Bagaimana Mengajar Asas Pengaturcaraan Pemula Komputer Dalam masa 10 jam? Sekiranya anda hanya mempunyai 10 jam untuk mengajar pemula komputer beberapa pengetahuan pengaturcaraan, apa yang akan anda pilih untuk mengajar ...


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

mPDF
mPDF ialah perpustakaan PHP yang boleh menjana fail PDF daripada HTML yang dikodkan UTF-8. Pengarang asal, Ian Back, menulis mPDF untuk mengeluarkan fail PDF "dengan cepat" dari tapak webnya dan mengendalikan bahasa yang berbeza. Ia lebih perlahan dan menghasilkan fail yang lebih besar apabila menggunakan fon Unicode daripada skrip asal seperti HTML2FPDF, tetapi menyokong gaya CSS dsb. dan mempunyai banyak peningkatan. Menyokong hampir semua bahasa, termasuk RTL (Arab dan Ibrani) dan CJK (Cina, Jepun dan Korea). Menyokong elemen peringkat blok bersarang (seperti P, DIV),

Dreamweaver Mac版
Alat pembangunan web visual

Pelayar Peperiksaan Selamat
Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

PhpStorm versi Mac
Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).