python - 成对嵌套列表的大多数 pythonic(和有效)方式

标签 python list python-itertools list-comprehension

我的 list 是:

mylist=[1,2,3,4,5,6]

我想将 mylist 转换成对列表:

[[1,2],[3,4],[5,6]]

是否有这样做的 pythonic 方式?列表理解? Itertools?

最佳答案

是的,列表理解是我通常的做法:

>>> groupsize = 2
>>> [mylist[x:x+groupsize] for x in range(0,len(mylist),groupsize)]
[[1,2],[3,4],[5,6]]
>>> groupsize = 3
>>> [mylist[x:x+groupsize] for x in range(0,len(mylist),groupsize)]
[[1,2,3],[4,5,6]]

我使用 range 是为了可移植性,如果您使用的是 python 2(您可能是),请将 range 更改为 xrange 以节省内存。

关于python - 成对嵌套列表的大多数 pythonic(和有效)方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11788565/

相关文章:

python - pyEphem的RA/Dec和Alt/Azi转换困难

python - 尝试使用 PEXPECT 从 python 运行 mysql grant 查询

R - 改变列表结构

python - 如何避免大量嵌套的 if-elif-else 条件语句来评估许多情况下的快速响应?

java - 如何停止模型类中的自动排序字段?

python - 如何将列表中的单词放入表格中?

python - python中itertools.izip的反函数是什么?

python - 如何在 itertools.cycle() 中进行洗牌?

python - 按项目对元组列表进行分组

python - 多线程 Python 应用程序和套接字连接的问题