清单转换 [英] List conversion

查看:85
本文介绍了清单转换的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在寻找一种转换这样的列表的方法

I am looking for a way to convert a list like this

[[1.1, 1.2, 1.3, 1.4, 1.5],
 [2.1, 2.2, 2.3, 2.4, 2.5],
 [3.1, 3.2, 3.3, 3.4, 3.5],
 [4.1, 4.2, 4.3, 4.4, 4.5],
 [5.1, 5.2, 5.3, 5.4, 5.5]]

类似这样

[[(1.1,1.2),(1.2,1.3),(1.3,1.4),(1.4,1.5)],
 [(2.1,2.2),(2.2,2.3),(2.3,2.4),(2.4,2.5)]
 .........................................

推荐答案

针对提问者的进一步评论,有两个答案:

In response to further comment from questioner, two answers:

# Original grid
grid = [[1.1, 1.2, 1.3, 1.4, 1.5],
 [2.1, 2.2, 2.3, 2.4, 2.5],
 [3.1, 3.2, 3.3, 3.4, 3.5],
 [4.1, 4.2, 4.3, 4.4, 4.5],
 [5.1, 5.2, 5.3, 5.4, 5.5]]


# Window function to return sequence of pairs.
def window(row):
    return [(row[i], row[i + 1]) for i in range(len(row) - 1)]

原始问题:

# Print sequences of pairs for grid
print [window(y) for y in grid]

更新的问题:

# Take the nth item from every row to get that column.
def column(grid, columnNumber):
    return [row[columnNumber] for row in grid]


# Transpose grid to turn it into columns.
def transpose(grid):
    # Assume all rows are the same length.
    numColumns = len(grid[0])
    return [column(grid, columnI) for columnI in range(numColumns)]


# Return windowed pairs for transposed matrix.
print [window(y) for y in transpose(grid)]

这篇关于清单转换的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆