Home  >  Article  >  Backend Development  >  How to delete the element with specified index in list

How to delete the element with specified index in list

anonymity
anonymityOriginal
2019-05-25 14:01:2614336browse

There are three ways to delete an element in the list

How to delete the element with specified index in list

1.remove: Delete a single element, delete the first element that meets the conditions, delete by value

Example:

>>> str=[1,2,3,4,5,2,6]
>>> str.remove(2)
>>> str
[1, 3, 4, 5, 2, 6]

2.pop: Delete single or multiple elements, delete bitwise (delete based on index)

>>> str=[0,1,2,3,4,5,6]
>>> str.pop(1)   #pop删除时会返回被删除的元素
>>> str
[0, 2, 3, 4, 5, 6]
>>> str2=['abc','bcd','dce']
>>> str2.pop(2)
'dce'
>>> str2
['abc', 'bcd']

3.del: It is based on the index (where the element is) position) to delete

Example:

>>> str=[1,2,3,4,5,2,6]
>>> del str[1]
>>> str
[1, 3, 4, 5, 2, 6]
>>> str2=['abc','bcd','dce']
>>> del str2[1]
>>> str2
['abc', 'dce']

In addition, del can also delete values ​​within the specified range.

>>> str=[0,1,2,3,4,5,6]
>>> del str[2:4]  #删除从第2个元素开始,到第4个为止的元素(但是不包括尾部元素)
>>> str
[0, 1, 4, 5, 6]

del can also delete the entire data object (list, collection, etc.)

>>> str=[0,1,2,3,4,5,6]
>>> del str
>>> str         #删除后,找不到对象
 
Traceback (most recent call last):
  File "<pyshell#27>", line 1, in <module>
    str
NameError: name &#39;str&#39; is not defined

Note: del deletes the reference (variable) instead of deleting the object (data). The object is collected by the automatic garbage collection mechanism (GC) deleted.

Supplement: Disguised method of deleting elements

s1=(1,2,3,4,5,6)
s2=(2,3,5)
s3=[]
for i in s1:
if i not in s2:
    s3.append(i)
print &#39;s1-1:&#39;,s1
s1=s3
print &#39;s2:&#39;,s2
print &#39;s3:&#39;,s3
print &#39;s1-2:&#39;,s1

The above is the detailed content of How to delete the element with specified index in list. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn