Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.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在常量x位置插入列表_Python_List_Position_Constants - Fatal编程技术网

python在常量x位置插入列表

python在常量x位置插入列表,python,list,position,constants,Python,List,Position,Constants,我从标题上知道这听起来很容易。这不是为了这个任务 想象一下下面的场景:您有一个正在运行的连接和一个名为example的列表。您会得到一些数据,其中的常数x总是从1开始,然后增加,直到连接关闭。您需要一些围绕这个数字的数据,并将其存储在一个列表中,正好位于该数字的位置。所以示例[x-1]。这就解决了基本问题 这并不能解决的问题是,如果连接给你一个命令,删除一些以前存储的不再需要的数据。假设此时,列表中有10个项目,需要在位置3、5和6处删除。现在,例子是7。现在x是11,插入一些数据,现在示例的长

我从标题上知道这听起来很容易。这不是为了这个任务

想象一下下面的场景:您有一个正在运行的连接和一个名为example的列表。您会得到一些数据,其中的常数x总是从1开始,然后增加,直到连接关闭。您需要一些围绕这个数字的数据,并将其存储在一个列表中,正好位于该数字的位置。所以
示例[x-1]
。这就解决了基本问题

这并不能解决的问题是,如果连接给你一个命令,删除一些以前存储的不再需要的数据。假设此时,列表中有10个项目,需要在位置3、5和6处删除。现在,例子是7。现在x是11,插入一些数据,现在
示例
的长度是8。此时,
exmaple[x-1]!=11
。现在,我们有了碎片

问题是这个。连接将(但不是按设定的顺序)提供一些其他数据。此数据也将具有与
x
相同的数字,但我们会说它是
y
。这些数据需要放在一起(假设
x
y
是int,在本例中需要添加,尽管我们实际上是在填充类中缺少的内容)。但是在数据序列中的稍后一点,但是您现在不再有x-1来将数据的两部分放在一起。现在的问题是,由于您无法将
示例[x]
设置为始终在
示例
中的位置
x
,因此在运行时无法同时匹配位置
x
y

我的问题是,C++中有什么方法可以做到<代码>示例[x]=数据;<代码>并且无论在位置
x
中的哪个位置,它都将始终取决于列表中发生的更改,例如删除项目。如果这是不可能的,那么我将努力计算
示例
列表位置的公式,以便它始终匹配

example = {}
example[1] = "whatever"
example[99] = "whatever"
example[-12] = "something else"
example['cow'] = 'pie'
#delete
example.pop(99)
这就是你要找的吗


是的,让它成为一个dict而不是一个列表……或者,OP可以将项目重新分配给
None
而不是deleting@JoranBeasley你的评论澄清了一个问题,我完全不知道第三段。如果你运行这个东西30天,我会说这对ram的使用效率很低。什么?cellsheet你是什么意思?第一个,保证不管我们的out of
示例
中采用了什么,该声明始终是正确的,以供以后运行时参考。我不理解你的评论。。。但是sure@cellsheet这可能有点过分(但你确实提到要运行30天),但你可以始终使用它,它的优点是在Python进程之外可以访问,快速的键外观和删除,一些方便的基本结构,如果你想在某个时间后使键过期……是的,我的话太多了。但是如果你运行这个代码,
example[99]
会不会是空的,因为根据我以前的经验,它会把它移到
example[2]
?嗯,不会。。。这是字典的钥匙。。。他们留下来了。。一个快速的警告。。。字典没有顺序
example = [0 for _ in range(MAX_ITEMS)]
#delete
example[x-1] = 0
#add
example[x-1] = data