Тази статия ще помогне за развиването на разбирането за кортежи, списъци, множества и речници в Python. Ще видим някои примери за тяхното приложение и случаи на употреба за някои задачи. Кодинг частта ще бъде направена в VS Code. Ако не сте инсталирали VS Code или искате да започнете от нулата, моля, посетете нашите предишни блогове.

Кортежи, списъци, множества и речници в Python – съдържание:

  1. Въведение в Python
  2. Списъци в Python
  3. Основни операции със списъци
  4. Кортежи в Python
  5. Разлика между кортежи и списъци в Python

Въведение в кортежи, списъци, множества и речници в Python

В предишния блог видяхме как можем да използваме променливите и типовете данни в Python. Също така разгледахме някои полезни функции, свързани с типовете данни и променливите.

Python е мощен скриптов език. Той разполага с много вградени структури от данни, налични за употреба. Тези структури са толкова мощни в обработката на данни, но същевременно са лесни за имплементиране.

Тези основни структури са от четири типа – списък, кортеж, речник и множество.

Списъци в Python

Списъците са вградени в Python. Те са изменяеми, така че елементи могат да бъдат добавяни или премахвани от тях, без да се променя оригиналното им съдържание, а елементите могат да бъдат достъпвани чрез индекс.

Те са толкова общи, че могат да се използват за съхранение на всякакъв тип обект, от низове до числа, дори и обекти. Освен това, не е необходимо всички елементи да са от един и същи тип. Един списък може да има елементи от различни типове.

За да използвате списък, трябва да инициализирате променлива с [].

Например:


# Празен списък
empty_list = []
# Списък с елементи от един и същи тип
same_type_list = [‘1’, ‘3’, ‘7’, ‘10’]
# Списък с елементи от различни типове
diff_type_list = [‘John’, ‘Dev’, 1.90, True]

Сега знаем как да инициализираме променливата със списък. Нека видим някои основни операции.

Основни операции със списъци

Никога не сте искали да преминете през елементите в списък, без да ги преглеждате един по един? Python предоставя няколко полезни функции. Те ви позволяват да манипулирате елементите, без да итерирате през списъка или да преминавате през всеки елемент.

Следните са петте най-използвани операции със списъци в Python:

1. len(list) – Връща дължината на списъка. Също така помага при итерирането, когато искате да преминете през списъка.

Например:


# Печат на дължината на списъка
some_list = ['k', 'u',  'm', 'a', 'r']
print(len(some_list))
# Преминаване през списъка
for i in range(len(some_list)):
    print(some_list[i])

# Изход

5
k
u
m
a
r

2. max(list) – Връща елемента в дадения списък с най-висока стойност, ако няма равенство, връща грешка.

Например:

# Печат на максималната стойност в списъка
num_list = [1, 2, 3, 4, 5, 12, 78, 900, 100]
print(max(num_list))
	

# Изход

900


3. min(list) – Връща елемента в дадения списък с най-ниска стойност, ако няма равенство, връща грешка.

Например:

# Печат на минималната стойност в списъка
num_list = [1,2,3,4,5,12,78,900,100]
print(min(num_list))


# Изход

1

4. sort(list) – Тази функция сортира всички тези данни и ги поставя в възходящ/низходящ ред по подразбиране, но ако параметърът key е предаден, сортира списъка на базата на оценката на функцията върху елементите.

Параметърът Reverse контролира дали сортирания (възходящ ред) списък да бъде предоставен такъв, какъвто е сортиран, или да бъде обърнат, т.е. в низходящ ред.

Синтаксисът е list.sort(reverse=True|False, key= some function)

Например:

num_list = [1,2,3,4,5,12,78,900,100]
print(num_list)
num_list.sort()
print(num_list)
num_list.sort(reverse = True)
print(num_list)

Изход:

[1, 2, 3, 4, 5, 12, 78, 900, 100]
[1, 2, 3, 4, 5, 12, 78, 100, 900] 
[900, 100, 78, 12, 5, 4, 3, 2, 1]

5. map(function, sequence) – Тази функция прилага функция върху всеки елемент от списъка. Синтаксисът е зададен от map(fun, iter). Тук ‘fun’ е функцията, която трябва да бъде приложена на всеки елемент от ‘iter’.

Например:

def square(n):
    return n * n

numbers = [1, 2, 3, 4]
result = map(square, numbers)
print(list(result))

изход:
[1, 4, 9, 16]

Има много други функции за списъци. Сега нека видим какви са кортежите.

Кортежи в Python

Python_tuples

Кортежите могат да бъдат създадени, като просто декларирате кортеж в скоби, (), или като конвертирате всяка последователност в кортеж, използвайки вградения конструктор tuple().

# Създаване на празен кортеж
empty_tuple = ()

seq_set = {1,2,3}
seq_list = [2,3,4,5]
print(type(seq))
print(type(seq_list))
# Конвертиране на множество в кортеж
seq_set_tuple = tuple(seq_set)

Изход:
<class 'set'> <class 'list'>
# Създаване на празен кортеж
empty_tuple = ()

seq_set = {1, 2, 3}
seq_list = [2, 3, 4, 5]
print(type(seq_set))
print(type(seq_list))
# Конвертиране на множество в кортеж
seq_set_tuple = tuple(seq_set)
print(type(seq_set_tuple))

изход:

<class 'set'> <class 'list'> <class 'tuple'>


Кортежите са като списъците с разликата, че кортежите са неизменяеми. Тогава защо използваме кортежи.

Разлика между кортежи и списъци в Python

Кортежите са неизменяеми, докато списъците са изменяеми. Това означава, че кортежите не могат да бъдат променяни след като са създадени, докато списъците могат да бъдат редактирани, за да добавят или премахват елементи.

Както списък, така и кортеж е последователност от елементи от данни, които не е задължително да са от един и същи тип.

Например:

# Кортеж с елементи от един и същи тип
same_type_list = ('1', '3', '7', '10')
print(same_type_list)

Изход:

('1', '3', '7', '10')
# Списък с елементи от различни типове
diff_type_list = ('John', 'Dev', 1.90, True)
print(diff_type_list)

# Изход

('John', 'Dev', 1.9, True)


Предстоящ блог пост

В предстоящите блогове ще учим за множества и речници.

Може да ви хареса и нашият Курс по JavaScript от начинаещ до напреднал.

Robert Whitney

Експерт по JavaScript и инструктор, който обучава ИТ отдели. Основната му цел е да повиши продуктивността на екипа, като учи другите как да си сътрудничат ефективно при програмирането.

View all posts →

Python Course From Beginner to Advanced in 11 blog posts:

  1. Питон кортежи, списъци, множества и речници. Част 3 от курса по Питон от начинаещ до напреднал в 11 публикации в блога
  2. Функции в Python. Част 7 от курса по Python за начинаещи до напреднали в 11 публикации в блога
  3. Въведение в курса по Python. Част 1 Курс по Python от начинаещ до напреднал в 11 блог поста
  4. Променливи и типове данни в Python. Част 2 от курса по Python за начинаещи до напреднали в 11 блог поста
  5. Питон множества и речници. Част 4 от курса по Питон за начинаещи до напреднали в 11 блог поста
  6. Питон класове и обекти. Част 9 Питон курс от начинаещ до напреднал в 11 блог поста
  7. Файлове в Python. Част 10 от курса по Python от начинаещ до напреднал в 11 публикации в блог.
  8. Цикли в Python. Част 6 от курса по Python от начинаещ до напреднал в 11 блог поста
  9. Разширени функции в Python. Част 8 от курса по Python от начинаещ до напреднал в 11 блог публикации