Sorting a List

Python'da ro'yxatlarni saralash mumkin.

Ro'yxatni Saralash

Python'da ro'yxatlarni saralash mumkin. Siz ro'yxatni joyida saralash uchun o'z ichiga olgan sort() metodidan yoki yangi saralangan ro'yxatni qaytarish uchun Pythonning sorted() funksiyasidan foydalanishingiz mumkin.

Keling, bir ro'yxat yaratib, uni saralashni sinab ko'raylik:

>>> my_list = [4, 10, 2, 1, 23, 9]
>>> my_list.sort()
>>> my_list
[1, 2, 4, 9, 10, 23]

Bu yerda siz 6 ta butun sonni o'z ichiga olgan, tasodifiy tartibda ro'yxat yaratdingiz. Ro'yxatni saralash uchun sort() metodini chaqirasiz, bu esa uni joyida saralaydi. Joyida saralash degani, sort() hech narsani qaytarmaydi.

Python bilan bog'liq umumiy xato shundaki, agar siz sort() ni chaqirsangiz, endi saralangan ro'yxatni o'zgaruvchiga tayinlashingiz mumkin, quyidagi kabi:

>>> sorted_list = my_list.sort()
>>> print(sorted_list)
None

Biroq, buni amalga oshirganda, sort() aslida saralangan ro'yxatni qaytarmasligini ko'rasiz. U har doim None qaytaradi.

Yaxshiyamki, siz Pythonning o'z ichiga olgan sorted() metodidan foydalanishingiz mumkin:

>>> my_list = [4, 10, 2, 1, 23, 9]
>>> sorted_list = sorted(my_list)
>>> sorted_list
[1, 2, 4, 9, 10, 23]

Agar sorted() ni ishlatsangiz, u yangi ro'yxat qaytaradi, va odatda ko'taruvchi tartibda saralaydi.

sort() metodi va sorted() funktsiyasi sizga belgilangan kalit bo'yicha saralash imkoniyatini ham beradi va ularga ko'taruvchi yoki kamaytuvchi tartibda saralashni aytishingiz mumkin, bu uchun reverse bayrog'ini o'rnatishingiz mumkin.

Keling, bu ro'yxatni kamaytuvchi tartibda saralaylik:

>>> my_list = [4, 10, 2, 1, 23, 9]
>>> sorted_list = sorted(my_list, reverse=True)
>>> sorted_list
[23, 10, 9, 4, 2, 1]

Agar sizda yanada murakkab ma'lumotlar tuzilmasi, masalan, ichma-ich ro'yxat yoki lug'at bo'lsa, sorted() ni kalit yoki qiymat bo'yicha maxsus saralash uchun ishlatishingiz mumkin.

Ushbu sahifada

Xato haqida xabar berish