将嵌套的数字列表更改为嵌套的元组列表

时间:2014-04-01 06:21:36

标签: python-2.7

请有人帮助我使用这个嵌套的数字列表的代码看起来像下面的元组的嵌套列表,即从pot到val。

pot = [[1,2,3,4],[5,6,7,8]]

val = [[(1,2),(2,3),(3,4)],[(5,6),(6,7),(7,8)]]

我使用了石斑鱼功能,但它并没有给我预期的结果。还有另外一种方法吗?感谢

3 个答案:

答案 0 :(得分:1)

这可能是一个更好的方法,但我注意到你的问题没有答案,并且做了一些工作:

pot = [[1,2,3,4],[5,6,7,8]]
val = []

for sublist in pot:
    temp = []
    for n in range (1, len(sublist)):
        temp.append((sublist[n-1], sublist[n]))
    val.append(temp)

print val

打印

[[(1, 2), (2, 3), (3, 4)], [(5, 6), (6, 7), (7, 8)]]

答案 1 :(得分:1)

for line in pot:
    temp = []
    for i in range(len(line)-1):
        temp.append( (line[i],line[i+1]) )
    val.append(temp)

可能包含错别字。

答案 2 :(得分:1)

我是Python的新手。刚刚开始学习它,因为我正在开展一个需要的项目,但我认为这解决了你的问题。

pot = [[1,2,3,4],[5,6,7,8]]
inner = []
val = []
a = 0
b = 0

for L in pot:
    for x in range(len(L)):
    if x>0:
        a = L[x-1]
        b = L[x]
        inner.append((a,b))
    val.append(inner)
    inner = []
print val

运行python 2.7的输出是:

[[(1, 2), (2, 3), (3, 4)], [(5, 6), (6, 7), (7, 8)]]