2.
Поиск элемента в списке:
>>> 3 in [1,2,3,4,5]
True
>>> 0 in [1,2,3,4,5]
False
>>> list = [1,2,3,4,5]
>>> list.index(5)
4
>>> list = [1,2,3,4,5,0,5]
>>> list.index(5)
4
Замечание:
Функция
list.index(a)
выдает первый встретившийся элемент
a
в списке, начиная с начала списка.
3.
Удаление элемента из списка:
>>> list = [1,2,3,4,5,0,5]
>>> list.pop(5)
0
>>> list
[1, 2, 3, 4, 5, 5]
>>> list.pop(-3)
4
>>> list
[1,2,3,5,5]
>>> list.pop(0)
1
>>> list
[2,3,5,5]
18
>>> list = [1,2,3,4,5,0,5]
>>> list.remove(5)
>>> list
[1, 2, 3, 4, 5]
>>> list.remove(-3)
>>> list
[1,2,4,5]
>>> list.remove(0)
>>> list
[2,3,5,5]
Замечание:
Функция
list.pop(i)
удаляет элемент с
i
-ым индексом и
выдает удаляемый элемент пользователю.
Функция
list.remove(i)
удаляет элемент с
i
-ым индексом и НЕ выдает
удаляемый элемент пользователю.
Двусвязные списки
В языке Python нет стандартного объекта
struct
, как в языке Си. Но этот
объект можно легко реализовать с помощью классов.
Для определения связного списка потребуется класс –
ListItem
, в
конструкторе которого будут определяться ссылки на предыдущий и
следующий элементы списка.
class ListItem:
def __init__(self, data=0):
self.prev = None
self.next = None
self.data = data
Определим функцию, выводящую все значения списка:
def write(self):
#Поиск начала списка
while not self.prev == None:
self=self.prev
#Вывод
while not self == None:
print(self.data)
self = self.next
19
Далее программу можно будет дополнить функциями, требующимися для
решения задач. Например, добавление элемента в голову (начало) списка, поиск
элемента в списке, удаление элемента списка.
Достарыңызбен бөлісу: |