2013-08-19 103 views
0

我需要减去最后一个元素并构建一个向量,如[1,1,1,...]。我有这样的功能:从列表中删除最后一个元素

def vectores(lista): 
    r=[] 
    for e in lista: 
     r.append(e[2]) 
     return r 

其中

lista = [['pintor', 'NCMS000', 1], ['ser', 'VSIS3S0', 1], ['muralista', 'AQ0CS0', 1], ['diego_rivera', 'NP00000', 1], ['frida_kahlo', 'NP00000', 1], ['caso', 'NCMS000', 1]] 

但函数返回[1];我能做什么?

+0

具有与其中return语句的范围做。在你的情况下,返回是在for循环中,所以在第一次迭代时它返回项目读取 – smac89

回答

8

您正在返回循环的第一次迭代。移动return语句for -loop:

def vectores(lista): 
    r=[] 
    for e in lista: 
     r.append(e[2]) 
    return r # here 

或者只是使用列表理解:

def vectores(lista): 
    return [e[2] for e in lista] 
相关问题