Дисциплины - Объектно-ориентированное программирование

ООП в Python - Структура данных - Список - упорядоченная изменяемая коллекция объектов

Списки в Python похожи на массивы в других языках программирования. Это индексированные коллекции объектов, в которых элементы нумеруются начиная с нуля. Количество элементов можно изменять по требованию и нет необходимости заранее определять как размер списка, так и тип данных для значений списка. В один и тот же список могут быть добавлены объекты разных типов.

Списки всегда заключены в квадратные скопки, а оъекты в списке всегда отделяются друг от друга запятыми:

odds = [1,3,5,7]

Списки можно задавать явно, перечисляя элементы, или наращивать программно. В таком случае, часто сперва объявляется пустой список;

odds = [];

Если значением сиска явлюятся строки - их необходимо брать в ковычки:

words = ['Python', 'is', 'the best'];

Список может содержать разные типы значений, в том числе и другие вложенные списки.

details = [[1,2,3],['a','b','c'],['one','two','three'],'Python', 3.8];

Любую строку можно превратить в список с помощью метода list(). Например, таким образом можно создать список из пяти элементов:

letters = list('abcde');

Обратное действие, т.е. превращение списка в строку можно осуществить с помощью функции join(). В кавычках перед функцией указывается соединительный символ.

str = ''.join(letters);

Вывести весь список на экран можно по имени:

Для вывода конкретного элемента из списка по индексу можно воспользоваться квадратными скопками.

Внутри квадратных скопок могут быть использованы срезы, которые определяют начальное и конечное значение, и шаг.

letters[start:stop:step]

Рассмотрим примеры. Сперва выведем все элементы на экран:

letters

Вывод элемента по индексу:

letters[0]
letters[1]
letters[2]
letters[3]

Выводим каждую вторую букву до (но не влключая) элемента с четвертым индексом.

letters[0:4:2]

Пропустить первые три буквы, и вывести остальные:

letters[3:]

Вывести все элементы до четвертого (не включая его):

letters[:4]

Вывести каждую вторую букву:

letters[::2]

Вывести последний элемент списка:

letters[-1]

Использование цикла for для прохода по элементам по списку:

for char in letters:
  print('\t', char);

Цикл for умеет работать со срезами:

for char in letters[:4]:
 print('\t', char)
for char in letters[-7]:
 print('\t', char)

Проверка принадлежности с помощью in и not in:

 if 'a' in letters:
  print('a');
 if 'x' not in letters:
  letters.append('x');

Для генерации случайных элементов списка можно воспользоваться специальной функцией range(). range() позволяет вам генерировать ряд чисел в рамках заданного диапазона. В зависимости от того, как много аргументов вы передаете функции, вы можете решить, где этот ряд чисел начнется и закончится, а также насколько велика разница будет между двумя числами.

Есть три способа вызова range():

  • range(стоп) берет один аргумент
  • range(старт, стоп) берет два аргумента
  • range(старт, стоп, шаг) берет три аргумента

Вызывая range() с одним аргументом, вы получите ряд чисел, начинающихся с 0 и включающих каждое число до, но не включая число, которое вы обозначили как конечное (стоп).

for i in range(3):
    print(i)

На экране увидим: 0 1 2.

Попробуем вызывать range() с двумя аргументами:

for i in range(1, 8):
    print(i)

На экране увдим: 1 2 3 4 5 6 7.

Рассмотрим еще пример использования функции range() с тремя аргументами:

for i in range(3, 16, 3):
    quotient = i / 3
    print(f"{i} делится на 3, результат {int(quotient)}.")

Создадим еще один список, и рассмотрим возможные операции с объектом списка:

nums = [1,2,3,4];

Операции со списками

Удаление элементов по значению с помощью метода remove():

nums.remove(3);

Для удаления элементов по индексу, можно воспользоваться методом pop(), который вызывается либо с входящим параметром, либо без. Входящий параметр указывает индекс элмента, который необходимо удалить. Если метод вызывается без входящих параметров, он удаляет последний элемент списка:

nums.pop();

Добавление новых объектов в конец списка осуществляется с помощью метода append():

nums.append(5);

Добавление элементов в список осуществляется с помощью метода extend(), который принимает входящим параметром другой список.

nums.extend([3,4]);

Вставка элементов в список по индексу осуществляется с помощью метода insert(), где первый входящий параметр - это индекс, второй - значение для вставки.

nums.insert(0,1);

Копирование списка осуществляется с помощью метода copy():

new_num = nums.copy();

Количество комментариев: 0

Для того, чтобы оставить коментарий необходимо зарегистрироваться
814301 БГУИР
814302 БГУИР
814303 БГУИР
894351 БГУИР
90421 БГУИР


Изображения Видео

1. Абстрактная фабрика https://www.youtube.com/watch?v=1mVONOCxfLg
2. Фабричный метод https://www.youtube.com/watch?v=5UqUDR6_2cY
3. Шаблон декоратор https://www.youtube.com/watch?v=Lwb9bm8yKD0
4. Dessign patterns on PHP https://github.com/domnikl/DesignPatternsPHP
5. Приёмы объектно-ориентированного проектирования. Паттерны проектирования Э. Гамма, Р. Хелм, Р. Джонсон, Д. Влиссидес; [пер. с англ.: А. Слинкин науч. ред.: Н. Шалаев]. — Санкт-Петербург [и др.] : Питер, 2014. — 366 с. : ил. ; 24 см.
6. Приемы объектно-ориентированного проектирования. Паттерны проектирования Э. Гамма, Р. Хелм, Р. Джонсон, Д. Влиссидес; [пер. с англ.: А. Слинкин науч. ред.: Н. Шалаев]. — Санкт-Петербург [и др.] : Питер, 2014. — 366 с. : ил. ; 24 см.
7. Ajax http://erud.by/ajax
8. Ajax http://erud.by/ajax
9. Ajax http://erud.by/ajax
10. Документация Laravel http://laravel.com
Задание к курсовой работе
Задание к курсовой работе
Вопросы к экзамену