Python 将元组元素转换为词汇表

Python 将元组元素转换为词汇表,python,python-3.x,Python,Python 3.x,我需要转换如下结构: (1, 2, 3, 4, 5, 6) {1: 2, 3: 4, 5: 6} 对于这样的措辞: (1, 2, 3, 4, 5, 6) {1: 2, 3: 4, 5: 6} 如何继续?我们的想法是将元组的两个片段与步骤2结合在一起,第一个片段从第0个元素开始,第二个片段从第1个元素开始,然后将结果传递给构造函数: >>> t = (1, 2, 3, 4, 5, 6) >>> dict(zip(t[::2], t[1::2])) {1:

我需要转换如下结构:

(1, 2, 3, 4, 5, 6)
{1: 2, 3: 4, 5: 6}
对于这样的措辞:

(1, 2, 3, 4, 5, 6)
{1: 2, 3: 4, 5: 6}
如何继续?

我们的想法是将元组的两个片段与步骤2结合在一起,第一个片段从第0个元素开始,第二个片段从第1个元素开始,然后将结果传递给构造函数:

>>> t = (1, 2, 3, 4, 5, 6)
>>> dict(zip(t[::2], t[1::2]))
{1: 2, 3: 4, 5: 6}
为了扩展这一点,以下是中间值:

>>> t[::2]
(1, 3, 5)
>>> t[1::2]
(2, 4, 6)
现在,
zip()

>>> zip(t[::2], t[1::2])
[(1, 2), (3, 4), (5, 6)]
然后,
dict()
将使用项的第一个元素作为键,第二个元素作为值,从对列表中生成一个字典

请注意,这种方法的缺点是会在内存中创建两个额外的列表,而不是在内存中创建。尽管如此,这种方法可以说更简单、可读性更强。

其思想是在步骤2中将元组的两个片段组合在一起,第一个片段从第0个元素开始,第二个片段从第1个元素开始,然后将结果传递给构造函数:

>>> t = (1, 2, 3, 4, 5, 6)
>>> dict(zip(t[::2], t[1::2]))
{1: 2, 3: 4, 5: 6}
为了扩展这一点,以下是中间值:

>>> t[::2]
(1, 3, 5)
>>> t[1::2]
(2, 4, 6)
现在,
zip()

>>> zip(t[::2], t[1::2])
[(1, 2), (3, 4), (5, 6)]
然后,
dict()
将使用项的第一个元素作为键,第二个元素作为值,从对列表中生成一个字典


请注意,这种方法的缺点是会在内存中创建两个额外的列表,而不是在内存中创建。不过,这种方法可以说更简单,可读性更强。

将元素2配对,并将结果传递给:

通过使用here,您可以避免像
[::2]
[1::2]
切片那样创建两个内存中的列表对象。看看为什么会这样

演示:


将元素2成对排列,并将结果传递给:

通过使用here,您可以避免像
[::2]
[1::2]
切片那样创建两个内存中的列表对象。看看为什么会这样

演示: