Rumah >pembangunan bahagian belakang >Tutorial Python >Cara Isih Senarai Rentetan dalam Python: Panduan Komprehensif

Cara Isih Senarai Rentetan dalam Python: Panduan Komprehensif

Linda Hamilton
Linda Hamiltonasal
2024-11-13 01:39:021037semak imbas

How to Sort Lists of Strings in Python: A Comprehensive Guide

Isih Senarai Rentetan dalam Python

Salah satu tugas biasa dalam pengaturcaraan ialah menyusun data teks. Dalam Python, mengisih senarai rentetan boleh dicapai menggunakan pelbagai teknik.

Isih Asas

Kaedah paling mudah ialah menggunakan kaedah sort() pada senarai itu sendiri . Ini mengisih senarai di tempat, mengubah suai susunan asal.

mylist = ["b", "C", "A"]
mylist.sort()

Salinan Diisih

Jika anda ingin mencipta salinan yang diisih senarai tanpa mengubah suai asal, gunakan fungsi sorted().

for x in sorted(mylist):
    print(x)

Isih Sensitif Tempatan

Secara lalai, Python melakukan isihan sensitif huruf besar dan ASCII sahaja. Untuk mempertimbangkan peraturan khusus setempat, gunakan parameter utama dengan pembantu cmp_to_key() daripada functools.

import locale
from functools import cmp_to_key
sorted(mylist, key=cmp_to_key(locale.strcoll))

Isih Tempatan Tersuai

Anda boleh menentukan tempat tersuai untuk menyusun. Contohnya, untuk mengisih mengikut peraturan Bahasa Inggeris dengan pengekodan UTF-8:

import locale
locale.setlocale(locale.LC_ALL, 'en_US.UTF-8')
# ...

Isih Tidak Peka Huruf

Elakkan menggunakan kaedah seperti lower() untuk kes- pengisihan tidak sensitif kerana ia hanya berfungsi untuk aksara ASCII. Sebaliknya, gunakan pengisihan sensitif setempat dengan alatan seperti strcoll().

Isih Tidak Peka Huruf yang Salah

# Incorrect because it uses lower(), which is limited to ASCII
mylist.sort(key=lambda x: x.lower())

Atas ialah kandungan terperinci Cara Isih Senarai Rentetan dalam Python: Panduan Komprehensif. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn