zoukankan      html  css  js  c++  java
  • python 使用zip合并相邻的列表项

    1 >>> a = [1, 2, 3, 4, 5, 6]
    2 >>> zip(*([iter(a)] * 2))
    3 [(1, 2), (3, 4), (5, 6)]

    函数形式:

    1 >>> group_adjacent = lambda a, k: zip(*([iter(a)] * k))
    2 >>> group_adjacent(a, 3)
    3 [(1, 2, 3), (4, 5, 6)]
    4 >>> group_adjacent(a, 2)
    5 [(1, 2), (3, 4), (5, 6)]
    6 >>> group_adjacent(a, 1)
    7 [(1,), (2,), (3,), (4,), (5,), (6,)]

    切片形式:

    1 >>> zip(a[::2], a[1::2])
    2 [(1, 2), (3, 4), (5, 6)]
    3  
    4 >>> zip(a[::3], a[1::3], a[2::3])
    5 [(1, 2, 3), (4, 5, 6)]

    列表推导式:

    1 >>> group_adjacent = lambda a, k: zip(*(a[i::k] for i in range(k)))
    2 >>> group_adjacent(a, 3)
    3 [(1, 2, 3), (4, 5, 6)]
    4 >>> group_adjacent(a, 2)
    5 [(1, 2), (3, 4), (5, 6)]
    6 >>> group_adjacent(a, 1)
    7 [(1,), (2,), (3,), (4,), (5,), (6,)]
  • 相关阅读:
    vue cli 3 构建vue项目
    hadoop综合大作业
    理解Mapreduce
    熟悉常用的HBase操作
    常用的HDFS操作
    爬虫大作业
    数据结构化与保存
    爬取新闻
    网络爬虫基础练习
    Hadoop综合大作业
  • 原文地址:https://www.cnblogs.com/WhatTTEver/p/6942625.html
Copyright © 2011-2022 走看看