27.12.2023
День шестой 27,12,2023
Диапазоны range
Это типы последовательности.
Диапазон это упорядоченная неизменяемая последовательность элементов.
Диапазоны используются в циклах
my_range = range(7)
print(my_range)
#range(0, 7)
print(type(my_range))
#<class 'range'>
print(list(my_range))
#[0, 1, 2, 3, 4, 5, 6]
**В диапазоне задается начальное, конечное значение и шаг.**
Пример:
my_range = range(7, 30, 3)
print(my_range)
#[7, 10, 13, 16, 19, 22, 25, 28]
Можно получать элемент диапазона по индексу:
my_range = range(7, 30, 3)
print(my_range[5])
#22
Методы диапазонов
Диапазоны в Python обладают некоторыми полезными методами:
start
: Возвращает начальное значение диапазона.stop
: Возвращает конечное значение диапазона.step
: Возвращает шаг диапазона.__contains__(value)
: Проверяет, содержит ли диапазон указанное значение.__len__()
: Возвращает длину диапазона.__getitem__(index)
: Возвращает элемент диапазона по указанному индексу.
Пример использования методов:
my_range = range(7, 30, 3)
print(my_range.start)
# 7
print(my_range.stop)
# 30
print(my_range.step)
# 3
print(22 in my_range)
# True
print(len(my_range))
# 8
print(my_range[5])
# 22
Встроенная функция zip
Объединение последовательностей в одну
frutis = ['banana', 'apple', 'lime']
quantities = [100, 101, 545]
frutis_qtys_zip = zip(frutis, quantities)
print(frutis_qtys_zip)
#<zip object at 0x0000024980AE2440>
frutis_qtys_list = list(frutis_qtys_zip)
print(frutis_qtys_list)
#[('banana', 100), ('apple', 101), ('lime', 545)] **получаем список кортежей
Конвертация zip объекта в словарь:**
frutis = ['banana', 'apple', 'lime']
quantities = [100, 101, 545]
frutis_qtys_zip = zip(frutis, quantities)
print(frutis_qtys_zip)
frutis_qtys_list = dict(frutis_qtys_zip)
print(frutis_qtys_list)
#{'banana': 100, 'apple': 101, 'lime': 545}
Переменная содержит ссылку на объект
Переменные могут ссылаться на один и тот же объект в пайтон