Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在Python中从数组中删除元素_Python_Arrays_Elements - Fatal编程技术网

如何在Python中从数组中删除元素

如何在Python中从数组中删除元素,python,arrays,elements,Python,Arrays,Elements,我有一个名为“a”的数组,其中的数字是1到10000。我想在2s中跳过列表,我已经成功地管理了它。但是,我希望程序每秒钟删除一个数字,例如,数字“2”,它将被分配给“x”。我尝试过.pop()之类的函数,但似乎没有任何进展。请找个人帮忙。我只是用错了这个函数吗 for x in range(0,9999,2): a.pop() 为什么不创建一个您想要的值的列表呢。它的效率要高得多: a = range(1,10000) a = a[1::2] #will contain al

我有一个名为“a”的数组,其中的数字是1到10000。我想在2s中跳过列表,我已经成功地管理了它。但是,我希望程序每秒钟删除一个数字,例如,数字“2”,它将被分配给“x”。我尝试过.pop()之类的函数,但似乎没有任何进展。请找个人帮忙。我只是用错了这个函数吗

for x in range(0,9999,2):
    a.pop()

为什么不创建一个您想要的值的列表呢。它的效率要高得多:

a = range(1,10000)

a = a[1::2]     #will contain all the even numbers
顺便说一下,代码不起作用的原因是(在某种意义上)在遍历列表时修改列表。除非你绝对确定那是你想要的,否则你应该彻底避免它


上述语法使用
列表[开始:结束:步骤]
语法。因此,
[1::2]
将从第二个元素开始获取列表中的每一个元素。类似地,
[::2]
将从默认的第一个元素开始获取列表的每一个元素,因为没有指定起始索引。

使用列表理解

a = [i for i in range(10000) if not i%2]

我是python新手,你能解释一下“::”是什么意思吗?他在迭代列表时并没有真正修改列表:)@georgecarmichael,答案更新了。希望它能帮助
range(1,10000,2)
创建一个奇数列表。他“在某种意义上”并不是在遍历列表时修改列表的偶数。他不明白
.pop()
做什么。