问题是:编写一个名为 middle 的函数,它接受一个列表并返回一个新列表,其中包含除第一个和最后一个元素之外的所有元素。
def middle(k):
new_number = []
for i in k:
if k[0]!= k and k[-1] != k:
new_number.append(i)
else:
return []
numbers = [0,1,2,3,4]
print(middle(numbers))
我正在使用 python,为什么我没有得到输出?顺便说一句,我知道切片存在,但我想知道没有它如何做。
if 语句中的条件是检查 k[0] 是否不等于整个列表 k 以及 k[-1] 是否不等于整个列表 k。
您应该检查 i(列表中的每个元素)是否不等于第一个和最后一个元素。
def middle(k):
new_number = []
for i in range(1, len(k)-1):
new_number.append(k[i])
return new_number
numbers = [0, 1, 0, 3, 4]
print(middle(numbers))
输出:
[1, 0, 3]