Друкарня від WE.UA

Функції sorted() та sum() у Python

Всіх вітаю! У цій статті ми розглянемо дві вбудовані функції під назвами sorted() та sum(). Також наведемо приклади до кожної з цих функцій у коді.

Функція sorted()

Функція sorted() приймає ітерований тип даних (список, кортеж, множина тощо) у якості параметра та сортує його елементи деяким чином:

numbers_list = [10, 5, 20, 15, 25, 30, 35, 50, 45, 40]
sorted_numbers = sorted(numbers_list)

print("Sorted list:", sorted_numbers)
print("Original list:", numbers_list)
Sorted list: [5, 10, 15, 20, 25, 30, 35, 40, 45, 50]
Original list: [10, 5, 20, 15, 25, 30, 35, 50, 45, 40]

Також треба зазначити, що функція sorted() створює новий об’єкт, де дає нам вже відсортований тип даних. У нашому випадку першочерговий список та той, який ми помістили у функцію sorted() — це два різні списки, а не один. Тому списки numbers_list та sorted_numbers є різними об’єктами.

Також sorted() має ще й параметри key і reverse. Параметр key дозволяє вказати за яким принципом сортувати елементи. Наприклад, ми хочемо сортувати елементи за їх значенням факторіалу:

import math

numbers_list = [5, 3, 44, 18, 23, 0, 10, 2, 52, 34]
sorted_numbers = sorted(numbers_list, key=math.factorial)

print("Sorted list:", sorted_numbers)
print("Original list:", numbers_list)
Sorted list: [0, 2, 3, 5, 10, 18, 23, 34, 44, 52]
Original list: [5, 3, 44, 18, 23, 0, 10, 2, 52, 34]

Параметр reverse у свою чергу просто сортує список у зворотному напрямку та приймає тільки значення True і False. Наводимо приклад:

numbers_list = [5, 10, 15, 20, 25, 30, 35, 40, 45, 50]
sorted_numbers = sorted(numbers_list, reverse=True)

print("Sorted list:", sorted_numbers)
print("Original list:", numbers_list)
Sorted list: [50, 45, 40, 35, 30, 25, 20, 15, 10, 5]
Original list: [5, 10, 15, 20, 25, 30, 35, 40, 45, 50]

Також sorted() може працювати ще й із словниками. Ось наочний приклад як це відбувається:

albums_rating = {"The Death of Slim Shady": "Eminem",
                 "Let God Sort 'Em Out": "Clipse",
                 "God Does Like Ugly": "JID",
                 "DAMN": "Kendrick Lamar",
                 "KID A": "Radiohead"}

sorted_rating = sorted(albums_rating.keys())
print("Alphabetically sorted album's titles:", sorted_rating)

sorted_rating = sorted(albums_rating.values())
print("Alphabetically sorted artist's names:", sorted_rating)
Alphabetically sorted album's titles: ['DAMN', 'God Does Like Ugly', 'KID A', "Let God Sort 'Em Out", 'The Death of Slim Shady']
Alphabetically sorted artist's names: ['Clipse', 'Eminem', 'JID', 'Kendrick Lamar', 'Radiohead']

Як бачимо ключі та значення відсортовані за позицією у абетці:

Alphabetically sorted album's titles: ['DAMN', 'God Does Like Ugly', 'KID A', "Let God Sort 'Em Out", 'The Death of Slim Shady']
Alphabetically sorted artist's names: ['Clipse', 'Eminem', 'JID', 'Kendrick Lamar', 'Radiohead']

Тобто якщо у функції sorted() вказаний тільки ітерований тип даних з числовими елементами, то функція сортує цей тип даних від меншого значення до більшого. Якщо ж вказаний тільки ітеррований тип даних з рядковими елементами, тоді функція сортує їх за алфавітним порядком.

Функція sum()

Функція sum() також приймає ітерований тип даних, але навідміну від sorted() вона сумує усі елементи та виводить результат:

numbers_list = [5, 10, 15, 20, 25, 30, 35, 40, 45, 50]
summed_numbers = sum(numbers_list)

print("Original list:", numbers_list)
print("Element's sum:", summed_numbers)
Original list: [5, 10, 15, 20, 25, 30, 35, 40, 45, 50]
Element's sum: 275

Зрозуміло, що sum() приймає лише числові значення. Також дана функція має ще параметр start, який приймає числове значення та додає його до остаточного результату. Розглянемо приклад, де параметр start буде дорівнювати 20, тому і кінцевий результат суми збільшить з 275 до 295:

numbers_list = [5, 10, 15, 20, 25, 30, 35, 40, 45, 50]
summed_numbers = sum(numbers_list, 20)

print("Original list:", numbers_list)
print("Element's sum:", summed_numbers)
Original list: [5, 10, 15, 20, 25, 30, 35, 40, 45, 50]
Element's sum: 295

Висновок

У цьому матеріалі ми ознайомилися з функціями sorted() та sum() та їхніми параметрами. Оглянули роботу кожної функції на прикладах і навчилися їх викоритовувати у коді. Всім дякую за увагу!

Статті про вітчизняний бізнес та цікавих людей:

  • CRM keyCRM: зручне рішення для продажів, комунікацій і керування командою

    Успіх компанії залежить від того, наскільки швидко вона здатна опрацьовувати вхідні запити. Коли дані про клієнтів розпорошені між різними месенджерами, виникає хаос. CRM keyCRM пропонує вихід із цієї ситуації, об’єднуючи всі робочі процеси в єдиному зручному інтерфейсі.

    Теми цього довгочиту:

    Crm
  • Різниця між UX і UI, яку варто зрозуміти ще до першого заняття

    Більшість людей, які обирають професію UX чи UI, довго вважають це одним і тим самим. Насправді це два різних підходи до роботи над продуктом, і плутанина між ними гальмує розвиток ще на старті.

    Теми цього довгочиту:

    Ui-ux
  • Логіка змін: як SEO оптимізація прибирає бар’єри до зростання

    Багато компаній приходять у SEO з очікуванням швидкого ривка, але дійсний ефект починається там, де сайт перестають латати точково. Тому в центрі роботи стоїть не окрема дія, а послідовні зміни. Оптимізація сайту має прибирати системні перешкоди, а не маскувати їх новими текстами

    Теми цього довгочиту:

    Seo
  • Музичний футуризм: неймовірні інструменти XXI століття

    Еволюція музичних інструментів це один із найкрутіших проявів потужності людської уяви і потреби виразити себе через мистецтво. І хоча багато традиційних інструментів майже не змінилися за століття існування, інновації і пошук не зупиняються.

    Теми цього довгочиту:

    Музичні Інструменти
  • Стіл – всьому голова? Так, якщо його правильно підібрати

    Коли починаєш вивчати пропозицію меблевих фабрик щодо столів, дивуєшся кількості варіантів, адже вони пропонують різні розміри, різні матеріали, різноманітні форми та дизайни. Скористайтесь нашим каталогом MebelOK, щоб Ви могли підібрати найкращу модель для Вашого приміщення

    Теми цього довгочиту:

    Столи
Поділись своїми ідеями в новій публікації.
Ми чекаємо саме на твій довгочит!
Magnifique numérique
Magnifique numérique@nocturnal_reader

Нічний читач

56Довгочити
995Перегляди
18Підписники
Підтримати
На Друкарні з 14 липня 2025

Більше від автора

  • Список різноманітних бібліотек у Python

    Всіх вітаю! Сьогодні хочу поділитися великим списком бібліотек у Python для різного призначення та потреб:https://github.com/vinta/awesome-pythonТут багато цікавих бібліотек зібрано за сферами їхньго призначення.

    Теми цього довгочиту:

    It
  • Roadmap — ваш путівник до поставлених цілей.

    Сайт Roadmap вміщує у собі багато путівників до великої кількості професій та сфер, у яких доволі чітко описано, що саме потрібно для повноцінного вивчення того чи іншого предмету зацікавленості.

    Теми цього довгочиту:

    It
  • Клас itemgetter() у модулі operator

    Всіх вітаю! У даній статті ми продовжимо тему спеціальних властивостей словників у Python. На цей раз ми поговоримо про модуль operator та його клас itemgetter(), яка дозволяє працювати зі списками та словниками у Python.

    Теми цього довгочиту:

    Програмування

Це також може зацікавити:

Коментарі (0)

Підтримайте автора першим.
Напишіть коментар!

Це також може зацікавити: