Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.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_Python 2.7_Insertion - Fatal编程技术网

Python 在列表中插入数字

Python 在列表中插入数字,python,python-2.7,insertion,Python,Python 2.7,Insertion,我有一本有序字典,如下所示: source =([('a',[1,2,3,4,5,6,7,11,13,17]),('b',[1,2,3,12])]) 我想先计算每个键的值的长度,然后计算它的sqrt,假设它是L 将L插入可以无余数分割的位置,并在其他数字后插入“1” 例如,source['a']=[1,2,3,4,5,6,7,11,13,17]它的长度是9。 因此len(source['a'])的sqrt为3 在可以被3精确分割的位置插入数字3(例如位置3、位置6、位置9)。如果数字的位置不能

我有一本有序字典,如下所示:

source =([('a',[1,2,3,4,5,6,7,11,13,17]),('b',[1,2,3,12])])
我想先计算每个键的值的长度,然后计算它的
sqrt
,假设它是L

L插入可以无余数分割的位置,并在其他数字后插入“1”

例如,
source['a']=[1,2,3,4,5,6,7,11,13,17]
它的长度是9。 因此
len(source['a'])
的sqrt为3

在可以被3精确分割的位置插入数字3(例如位置3、位置6、位置9)。如果数字的位置不能被3精确分割,则在后面插入1

要获得如下结果:

result=([('a',["1,1","2,1","3,3","4,1","5,1","6,3","7,1","11,1","13,3","10,1"]),('b',["1,1","2,2","3,1","12,2"])]

我不知道如何将列表中的项更改为字符串对。顺便说一句,这不是我的家庭作业,我试图构建一个布尔检索引擎,源数据太大,所以我在这里创建了一个简单的示例来解释我想要实现的目标:)

由于这似乎是一个家庭作业,我将尝试帮助您解决您面临的问题

我不知道如何将列表中的项更改为字符串对

由于整个列表都需要更新,因此最好重新创建它,而不是就地更新它,尽管列表可能是可变的

考虑一份清单

lst = [1,2,3,4,5]
要将其转换为字符串列表,可以使用列表理解

lst = [str(e) for e in lst]
您也可以使用内置的
map
作为
map(str,lst)
,但是您需要记住,在Py3.X中,map返回一个map对象,因此需要相应地处理它

理解中的条件最好用条件陈述来表达

<TRUE-STATEMENT> if <condition> else <FALSE-STATEMENT>
包括
列表的任何序列的长度都可以通过内置

您可以使用具有分数幂的运算符
**
,或者使用
数学
模块并调用
sqrt
函数来计算平方根


现在,您只需结合上述建议来解决您的问题。

如果这是一个标准Python字典,则不需要订购。你需要使用collections.OrderedDict(也许你会?)。向我们展示你的尝试或你认为可能解决问题的方法总是一个好主意,即使你完全错了。
"{},{}".format(a,b)