加入列表中的最后一个元素

时间:2016-02-13 21:10:10

标签: python python-3.x

我一直在搜索谷歌和本网站以获得答案但无济于事,只有几个不同的搜索字词。因此,如果问题已经得到解答,我很乐意指出它。

我尝试加入列表的一系列元素,包括列表的最后一个元素。这是我的测试代码:

MultiBinding

我知道范围不会包含列表的最后一个元素,所以这只给我3个test2,但是如果我使用0而不是-1来试图让它包含最后一个元素循环回来,它不会返回任何内容。

我对编码仍然很陌生,所以如果有更简单的方法可以让我感到惊讶。我很高兴知道这是否可以解决,但对于另一种解决方案同样高兴。基本上我将列表中的前两个项目拉出来检查对象名称,并且列表的其余部分 - 没有特定数量的元素 - 是第二个变量。

我假设我可以做一些事情,比如弹出列表中的前两个元素并将它们放入自己的元素中,然后加入该列表和截断的原始元素而不使用范围。但如果检查失败,我需要再次使用原始列表,所以我也必须复制一份列表。如果完全可行的话,用更少的代码来完成它会很好吗?

2 个答案:

答案 0 :(得分:5)

要获取包含最后一个元素的列表,请将结束:

inp = ['1','2','3','4']
test = '_'.join(inp[:2])
test2 = '_'.join(inp[2:])

print(test + ' & ' + test2)

答案 1 :(得分:2)

您可以使用嵌套联接:

>>> ' & '.join(['_'.join(inp[i:j]) for i, j in zip([0, 2], [2, None])])
'1_2 & 3_4'

或更简单的解决方案:

>>> ' & '.join(["_".join(inp[:2]), "_".join(inp[2:])])
'1_2 & 3_4'