如何在不使用python内置函数的情况下删除数组中的元素
我用内置函数试过这个程序,但我不知道没有它们该怎么做
c = [6,7,8,9]
c.remove(c[0])
print(c)我得到了预期的结果,但我不想使用python中的内置函数。
发布于 2019-08-30 21:01:39
如果您知道要删除的元素的索引:
1)您可以连接列表的2个切片,这些切片包含除要删除的元素之外的所有元素:
index_to_remove = 0
c = c[0:index_to_remove] + c[index_to_remove + 1:]2)或使用列表理解过滤:
c = [e for i, e in enumerate(c) if i != index_to_remove]如果只想删除第一个具有特定值的元素,可以使用相同的方法,只需设置:
index_to_remove = c.index(my_value)发布于 2019-08-30 21:02:55
这应该可以做到这一点,但是这个方法创建了一个新的数组
c=[6,7,8,9]
d=[]
a=0
for x in c:
if x!=c[a]: #or you write c[0] and remove the a=0
d.append(x)
print(d) 发布于 2019-08-30 22:27:06
您可以使用列表理解:
c = [ e for e in c if e != c[0] ]但是,如果您有多个c值实例,则它们都将被删除。
按索引删除也可以使用列表理解来完成:
c = [ e for i,e in enumerate(c) if i != 0 ]https://stackoverflow.com/questions/57727171
复制相似问题