Основы программирования на Python Списки в языке программирования Python, как и строки, являются упорядоченными последовательностями. Однако, в отличии от строк, списки состоят не из символов, а из различных объектов (значений, данных), и заключаются не в кавычки, а в квадратные скобки [ ]. Объекты отделяются друг от друга с помощью запятой. Списки могут состоять из различных объектов: чисел, строк и даже других списков. В последнем случае, списки называют вложенными. [23, 656, -20, 67, -45] # список целых чисел [4.15, 5.93, 6.45, 9.3, 10.0, 11.6] # список из дробных чисел ["Katy", "Sergei", "Oleg", "Dasha"] # список из строк ["Москва", "Титова", 12, 148] # смешанный список [[0, 0, 0], [0, 0, 1], [0, 1, 0]] # список, состоящий из списков Как и над строками над списками можно выполнять операции соединения и повторения: >>> [45, -12, 'april'] + [21, 48.5, 33] [45, -12, 'april', 21, 48.5, 33] >>> [[0,0],[0,1],[1,1]] * 2 [[0, 0], [0, 1], [1, 1], [0, 0], [0, 1], [1, 1]] >>> По аналогии с символами строк, можно получать доступ к объектам списка по их индексам, извлекать срезы, измерять длину списка: >>> li = ['a','b','c','d','e','f'] >>> len(li) 6 >>> li[0] 'a' >>> li[4] 'e' >>> li[0:3] ['a', 'b', 'c'] >>> li[3:] ['d', 'e', 'f'] >>> В отличии от строк, списки — это изменяемые последовательности. Если представить строку как объект в памяти, то когда над ней выполняются операции конкатенации и повторения, то это строка не меняется, а в результате операции создается другая строка в другом месте памяти. В строку нельзя добавить новый символ или удалить существующий, не создав при этом новой строки. Со списком дело обстоит иначе. При выполнении операций другие списки могут не создаваться, а изменяться непосредственно оригинал. Из списков можно удалять элементы, добавлять новые. При этом следует помнить, многое зависит от того, как вы распоряжаетесь переменными. Бывают ситуации, когда списки все-таки копируются. Например, результат операции присваивается другой переменной. Символ в строке изменить нельзя, элемент списка — можно: >>> mystr = 'abrakadabra' >>> mylist = ['ab','ra','ka','da','bra'] >>> mystr[3] = '0' Traceback (most recent call last): File "<pyshell#11>", line 1, in <module> mystr[3] = '0' TypeError: 'str' object does not support item assignment >>> mylist[1] = 'ro' >>> mylist ['ab', 'ro', 'ka', 'da', 'bra'] >>> В списке можно заменить целый срез: >>> mylist[0:2] = [10,20] >>> mylist [10, 20, 'ka', 'da', 'bra'] >>> Более сложная ситуация: >>> alist = mylist[0:2] + [100,'it is ',200] + mylist[2:] # новый список >>> a2list = mylist # создается вторая ссылка-переменная на первый список >>> alist [10, 20, 100, 'it is ', 200, 'ka', 'da', 'bra'] >>> a2list [10, 20, 'ka', 'da', 'bra'] >>> a2list[0] = '!!!' # изменяем список >>> a2list ['!!!', 20, 'ka', 'da', 'bra'] >>> mylist # обе переменные связаны с одним списком ['!!!', 20, 'ka', 'da', 'bra'] >>> Практическая работа
Пример выполнения практической работы![]() |
|||



Последние комментарии
3 дня 22 часа назад
4 дня 15 часов назад
4 дня 19 часов назад
4 дня 21 час назад
5 дней 16 часов назад
5 дней 16 часов назад
6 дней 16 часов назад
1 неделя 16 часов назад
1 неделя 2 дня назад
1 неделя 4 дня назад