Type:List
Материал из PythonWiki.
Содержание |
Списки
Создание списков
Самый простой способ создания списка - это перечислить элементы списка через запятую в квадратных скобках:
>>> [10, 20, 30, 40]
[10, 20, 30, 40]
>>> ["one", "two", "three"]
['one', 'two', 'three']
Элементы списков могут быть разного типа.
Список содержит строку, целое и дробное числа и другой список:
>>> ["hello", 5, 2.0, [10, 20]]
['hello', 5, 2.0, [10, 20]]
Список, являющийся элементом другого списка, называют вложенным.
Списки можно создавай функцией range():
>>> range(1,5)
[1, 2, 3, 4]
Если функции range() передано только одно значение, то она вернет список с целыми значениями от 0 до N-1, где N –
значение переданного параметра:
>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
Если range() указать три аргумента, то последний из них будет служить размером шага:
>>> range(1, 10, 2)
[1, 3, 5, 7, 9]
Так же можно создавать пустые списки пустыми квадратными скобками ([]).
Списки могут сохраняться в переменных:
numbers = [64, 512, 1024]
empty = []
print numbers, empty
[64, 512, 1024] []
Работа со списками
Работа со списками происходит также как и со строками.
>>>numbers[0]
64
>>>numbers[-1]
1024
Индексом может также служить переменная целочисленного типа:
>>> list=["a","b","c"]
>>> i=1
>>> list[i]
'b'
Единственное отличие списков от строк заключается в том, что значения списков могут меняться.
>>> list[i]="f"
>>> list[i]
'f'
>>> list
['a', 'f', 'c']
Длина списка определяется функцией len():
>>> list = [[1,2],[0.6,3.1415],["a","b"],1,-6,"world"]
>>> len(list)
6
Стоит обратить внимание, что вложеные списки считаются как один элемент!
С помощью логического оператора in можно проверять принадлежность списку:
>>> 'world' in list
True
>>> 'a' in list
False
>>> ['a','b'] in list
True
Поскольку ['a','b'] является одним элементом списка list, то элемент 'a' в списке list не будет найден.
Методы
Для добавления элемента в список используется метод append()
>>> list.append('d')
>>> list
['a', 'b', 'c', 'd']
Чтобы вставить элемент в начало или в другую позицию необходимо использовать метод insert()
>>> list.insert(2,'d')
>>> list
['a', 'b', 'd', 'c', 'd']
Первый параметр указывает индекс элемента перед которым будет производится вставка.
Как мы видели в предыдущем примере в списке могут находится элементы с одинаковыми значениями.
Для определения индекса первого вхождения элемента следует использовать метод index()
>>> list.index('b')
1
>>> list.index('d')
2
Используя метод count() можно посчитать количество элемента в списке.
>>> list.count('b')
1
>>> list.count('d')
2
При необходимости удалить (первый) элемент из списка применяется метод remove()
>>> list
['a', 'b', 'd', 'c', 'd']
>>> list.remove('d')
>>> list
['a', 'b', 'c', 'd']
", ".join( listName ) # соединить элементы списка через запятую l_Row = l_List.pop(0) # получить первый элемент списка
Сортировка
Для сортировки элементов в списке предусмотрены два метода:
- сортировка по возрастанию sort()
- изменение порядка следования элементов на обратный reverse()
>>> list = [7,2,9,34,7,1,0,4]
>>> list.sort()
>>> list
[0, 1, 2, 4, 7, 7, 9, 34]
>>> list = [7,2,9,34,7,1,0,4]
>>> list.reverse()
>>> list
[4, 0, 1, 7, 34, 9, 2, 7]
При необходимости отсортировать элементы списка по убыванию нужно применить последовательно метод sort() а за ним reverse()
>>> list = [7,2,9,34,7,1,0,4]
>>> list.sort()
>>> list
[0, 1, 2, 4, 7, 7, 9, 34]
>>> list.reverse()
>>> list
[34, 9, 7, 7, 4, 2, 1, 0]
--RussianRex 08:10, 14 декабря 2006 (EET)

