Python тілінде тізімді сұрыптау: сұрыпталған және сұрыпталған арасындағы айырмашылық

Іскерлік

Python тілінде тізімді өсу немесе кему ретімен сұрыптаудың екі жолы бар.

  • sort()
  • sorted()

Жолды немесе кортежді сұрыптағыңыз келсе, sorted() функциясын пайдаланыңыз.

Мұнда келесі ақпарат берілген.

  • Бастапқы тізімді сұрыптайтын тізім түрі әдісіsort()
  • Жаңа сұрыпталған тізімді жасаңыз, кірістірілген функция: .sorted()
  • Жолдар мен кортеждерді сұрыптау әдісі

Бастапқы тізімді сұрыптау, тізім түрі әдісі: sort()

sort() — тізім түрінің әдісі.

Түпнұсқа тізімнің өзі қайта жазылатын жойқын процесс.

org_list = [3, 1, 4, 5, 2]

org_list.sort()
print(org_list)
# [1, 2, 3, 4, 5]

sort() ешқайсысын қайтаратынын ескеріңіз.

print(org_list.sort())
# None

Әдепкі – өсу реті. Кему реті бойынша сұрыптағыңыз келсе, аргументтің кері мәнін шын мәніне орнатыңыз.

org_list.sort(reverse=True)
print(org_list)
# [5, 4, 3, 2, 1]

Жаңа сұрыпталған тізімді жасаңыз, кірістірілген функция: sorted()

sorted() — кірістірілген функция.

Сұрыпталатын тізім аргумент ретінде көрсетілгенде сұрыпталған тізімді қайтарады. Бұл бастапқы тізімді өзгертпейтін бұзылмайтын процесс.

org_list = [3, 1, 4, 5, 2]

new_list = sorted(org_list)
print(org_list)
print(new_list)
# [3, 1, 4, 5, 2]
# [1, 2, 3, 4, 5]

sort() сияқты әдепкі өсу реті болып табылады. Кему реті бойынша сұрыптағыңыз келсе, аргументтің кері мәнін шын мәніне орнатыңыз.

new_list_reverse = sorted(org_list, reverse=True)
print(org_list)
print(new_list_reverse)
# [3, 1, 4, 5, 2]
# [5, 4, 3, 2, 1]

Жолдар мен кортеждерді сұрыптау әдісі

Жолдар мен кортеждер өзгермейтін болғандықтан, бастапқы нысанды қайта жазу үшін sort() әдісі қолжетімді емес.

Екінші жағынан, сұрыпталған тізімді жаңа нысан ретінде жасайтын sorted() функциясының аргументі жол немесе кортеж, сонымен қатар тізім болуы мүмкін. Дегенмен, sorted() тізімді қайтаратындықтан, оны жолға немесе кортежге түрлендіру қажет.

Жолдарды сұрыптау

Жол sorted() функциясының аргументі ретінде көрсетілгенде, сұрыпталған жолдың әрбір таңбасы элемент ретінде сақталатын тізім қайтарылады.

org_str = 'cebad'

new_str_list = sorted(org_str)
print(org_str)
print(new_str_list)
# cebad
# ['a', 'b', 'c', 'd', 'e']

Жолдар тізімін бір жолға біріктіру үшін join() әдісін пайдаланыңыз.

new_str = ''.join(new_str_list)
print(new_str)
# abcde

Кему реті бойынша сұрыптағыңыз келсе, аргументтің кері мәнін шын мәніне орнатыңыз.

new_str = ''.join(sorted(org_str))
print(new_str)
# abcde

new_str_reverse = ''.join(sorted(org_str, reverse=True))
print(new_str_reverse)
# edcba

Жолдың өлшемі таңбаның Юникод код нүктесімен (таңба коды) анықталады.

Кортеждерді сұрыптау

Кортеждер жолдармен бірдей; sorted() функциясының аргументі ретінде кортежді көрсету элементтердің сұрыпталған тізімін қайтарады.

org_tuple = (3, 1, 4, 5, 2)

new_tuple_list = sorted(org_tuple)
print(org_tuple)
print(new_tuple_list)
# (3, 1, 4, 5, 2)
# [1, 2, 3, 4, 5]

Тізімді кортежге түрлендіру үшін tuple() пайдаланыңыз.

new_tuple = tuple(new_tuple_list)
print(new_tuple)
# (1, 2, 3, 4, 5)

Кему реті бойынша сұрыптағыңыз келсе, аргументтің кері мәнін шын мәніне орнатыңыз.

new_tuple = tuple(sorted(new_tuple_list))
print(new_tuple)
# (1, 2, 3, 4, 5)

new_tuple_reverse = tuple(sorted(new_tuple_list, reverse=True))
print(new_tuple_reverse)
# (5, 4, 3, 2, 1)
Copied title and URL