当前位置:  开发笔记 > 编程语言 > 正文

如何创建一系列元组?

如何解决《如何创建一系列元组?》经验,为你挑选了1个好方法。

我想创建一系列不同长度的元组.例如,有时我可能想要一个包含3个元组的序列:

((0.0, 100.0), (0.0, 100.0), (0.0,100.0))

其他时候我可能想要一个包含4个元组的序列:

((0.0, 100.0), (0.0, 100.0), (0.0, 100.0), (0.0, 100.0))

我正在使用Python 2.7.最快的方法是什么?



1> TigerhawkT3..:

只需使用普通发电机range:

>>> tuple((0., 100.) for _ in range(3))
((0.0, 100.0), (0.0, 100.0), (0.0, 100.0))
>>> tuple((0., 100.) for _ in range(4))
((0.0, 100.0), (0.0, 100.0), (0.0, 100.0), (0.0, 100.0))

您也可以使用乘法,但如果您决定包含可变对象,则可能会产生意外影响,因为它们通过引用复制:

>>> ((0., 100.),) * 3
((0.0, 100.0), (0.0, 100.0), (0.0, 100.0))
>>> ((0., 100.),) * 4
((0.0, 100.0), (0.0, 100.0), (0.0, 100.0), (0.0, 100.0))
>>> a = ((0., 100., []),) * 3
>>> a
((0.0, 100.0, []), (0.0, 100.0, []), (0.0, 100.0, []))
>>> a[0][-1].append(1)
>>> a
((0.0, 100.0, [1]), (0.0, 100.0, [1]), (0.0, 100.0, [1]))

推荐阅读
echo7111436
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有