我被要求接受一个整数列表(x),将列表中的第一个值和最后一个值相加,然后返回一个带和的整数。我已经使用了下面的代码来实现这一点,但我遇到的问题是,当我尝试计算和时,它实际上是一个单项目列表,而不是一个整数。我试着把它转换成整数,但似乎无法使它起作用。
def addFirstAndLast(x):
lengthOfList = len(x)
firstDigit = x[0:1]
lastDigit = x[lengthOfList:lengthOfList-1]
sum = firstDigit + lastDigit
return sum
这一切归结为:
在Python中,一个负的列表索引意味着:从列表的右边向左边开始索引,其中从右到左的第一个位置是
-1
,第二个位置是-2
,最后一个位置是-len(lst)
。使用Slice Notation:
x[0]=将为您提供列表的索引0th,即第一个值。
x[-1]=将给您列表的最后一个元素。
使用索引
你正在切片列表,它返回列表。在这里,您应该改用索引:
为什么切片对你来说是错误的:
当您执行
x[0:1]
时,您将从列表的开始到第一个间隔获取项目列表。例如,执行
x[0:2]
将返回项0和1。相关问题 更多 >
编程相关推荐