是否有可能在列表和元素中使用相同的切片符号以得到相同的结果?

问题描述 投票:0回答:1

我想在列表的最后一个索引中获取元素,但有时最后一个索引是列表,在这种情况下,我希望嵌套列表中的第一个元素。

#list in moment 1:
Lm1 = [1,2,3,4]

#list in moment 2:
Lm2 = [1,2,3,4,[1,2,3]]

我只能为此使用if。

#Option1:

def if_list(lastposition):
    if isinstance(lastposition, list):
        return list[0]
    else:
        return lastposition

element = if_list(Lm1[-1])
do whatever

或者如果我想在两种情况下都执行相同的操作,则可以像这样遍历列表并使用相同的切片符号。它将提供我想要的元素。

#Option2:

Lm1 = [[1],[2],[3],[4]]
Lm2 = [[1],[2],[3],[4],[1,2,3]]

Lm1[-1][0]
Lm2[-1][0]

是否有一种方法可以使用类似于切片符号的方法在两种情况下(当索引为列表时,而索引未为列表时)或简单的一个线性方法都可以使用?

类似:

#Lm1[-1:][:]...

问题是,我不知道是否有更多时间来建立列表就像Option2一样,并使用相同的分片符号,或者每次都使用if原因,例如Option1。

我使用的是pythom 3.7,对较旧的版本了解不多。

python python-3.x list nested slice
1个回答
0
投票

如果需要,您可以像这样做一个衬板:

© www.soinside.com 2019 - 2024. All rights reserved.