Удалить объект из списка объектов в python
В Python, как я могу удалить объект из массива объектов? Вот так:
x = object()
y = object()
array = [x,y]
# Remove x
Я пробовал array.remove()
, но он работает только со значением, а не с определенным местом в массиве. Мне нужно удалить объект, обратившись к его позиции (remove array[0]
)
Ответы
Ответ 1
В python нет массивов, вместо этого используются списки. Существуют различные способы удаления объекта из списка:
my_list = [1,2,4,6,7]
del my_list[1] # Removes index 1 from the list
print my_list # [1,4,6,7]
my_list.remove(4) # Removes the integer 4 from the list, not the index 4
print my_list # [1,6,7]
my_list.pop(2) # Removes index 2 from the list
В вашем случае подходящий метод для использования - pop, потому что он требует удаления индекса:
x = object()
y = object()
array = [x, y]
array.pop(0)
# Using the del statement
del array[0]
Ответ 2
del array[0]
где 0
- индекс объекта в список (в python нет массива)
Ответ 3
Если вы знаете местоположение массива, вы можете передать его в себя. Если вы удаляете несколько элементов, я предлагаю удалить их в обратном порядке.
#Setup array
array = [55,126,555,2,36]
#Remove 55 which is in position 0
array.remove(array[0])
Ответ 4
если вы хотите удалить последний, просто выполните your_list.pop(-1)
если вы хотите удалить первый your_list.pop(0)
или любой индекс, который хотите удалить