我坚持这个问题:
编写一个返回新列表的函数
lossy_merge(list_1, list_2)
包含list_1
的所有元素,除了最后一个后跟所有元素 除{1}之外的list_2
元素。您可以假设两者兼而有之
list_1
和list_2
至少包含一个元素。
例如:
测试以下内容:
ans = lossy_merge([10, 20, 30], [100, 200, 300])
print(ans)
应该给我:[10, 20, 200, 300]
我目前拥有的功能:
def lossy_merge(list_1, list_2):
"""returns list"""
list1 = list_1[0:2]
list2 = list_2[1:3]
return list1 + list2
但是,当我与其他人一起测试时,给我[10,20,200,300]
:
ans = lossy_merge([10], ['rhubarb'])
print(ans)
我得到[10]
而不是预期的[]
我做错了什么?
抱歉,我是Python 3编程的新手:/
答案 0 :(得分:2)
将第一个列表切片但不包括最后一个项目,从第二个项目开始切换第二个列表,直到第二个列表的末尾。请记住,最后一项是索引-1,第二项是索引1,因为Python中的计数从零开始。
return list_a[:-1] + list_b[1:]