Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.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 3.x python中列表上类似memset的功能_Python 3.x_List - Fatal编程技术网

Python 3.x python中列表上类似memset的功能

Python 3.x python中列表上类似memset的功能,python-3.x,list,Python 3.x,List,我希望在执行任务时修改一个非常大的列表,并且在任务完成后,我希望尽快将列表中的所有元素设置为单个值。在C++中,我们使用MeMSET来实现这个目的。python中有什么方法可以完成这项工作吗 提前感谢。看起来您需要的是程序执行的速度 memset()是一个相对简单的操作的快速版本: 来这里救援。在处理大型数据集时,它们比列表快得多。您只能遍历它们一次 # construct a generator: def fun(): for i in range(0,3): # Basically co

我希望在执行任务时修改一个非常大的列表,并且在任务完成后,我希望尽快将列表中的所有元素设置为单个值。在C++中,我们使用MeMSET来实现这个目的。python中有什么方法可以完成这项工作吗


提前感谢。

看起来您需要的是程序执行的速度

memset()是一个相对简单的操作的快速版本:

来这里救援。在处理大型数据集时,它们比列表快得多。您只能遍历它们一次

# construct a generator:
def fun():
  for i in range(0,3): # Basically construct your list like this
    yield  i

a = fun()

# iterate through generator:
for i in a:
  # do manipulations on i

# create a new generator yielding all same values for your last operation

memset
仅适用于字节数组,而不适用于任何其他类型的数组(更不用说列表了)。如果我的回答对你有帮助,你可以接受我的回答,但这对我的目的没有帮助,但我对生成器有了更多的了解(阅读有关它们的内容,希望它有所帮助)。谢谢你。如果我不按顺序对“I”执行操作(比如从顺序中的第一个元素到最后一个元素),该怎么办?我随机修改列表元素。例如,布尔列表“已访问”,它存储在执行深度优先搜索时是否访问了图形中的第I个顶点。执行dfs操作后,我需要将“已访问”列表中的所有元素设置为“False”,以便该列表可用于下一个dfs操作。@TarunSai您可以多次生成任何想要的内容。然后生成一个函数,
yield 3
yield'generator'
yield True
,这三个东西将被存储在一个超快速列表中:
[3',generator',True]