该函数有一个列表,如果列表的第一个和最后一个数字相同,则必须返回True。
def same_first_last(nums):
if nums[0] == nums[len(nums) - 1]:
return True
else:
return False
该函数返回“索引值超出范围”。请帮忙
答案 0 :(得分:1)
问题是如何处理空列表的情况。这取决于你如何看待它:如果你看到一个没有数字的数字的空列表,你可以说第一个和最后一个数字是相同的。在这种情况下,你可以写:
def same_first_last(nums):
return not nums or nums[0] == nums[-1]
如果您认为空列表不具有相同的第一个和最后一个数字,则可以使用:
def same_first_last(nums):
return bool(nums) and nums[0] == nums[-1]
答案 1 :(得分:0)
你可以修改:
if nums[0] == nums[-1]:
return True
return False
但我认为错误“索引值超出范围”,此函数中的 nums 帖子可能会清空列表
答案 2 :(得分:0)
首先,检查列表是否为空。假设列表不为空。该方法如下所示。
def same_first_last(nums)
return True if a[0]==a[-1] else False
nums [-1]是从列表中获取最后一个元素的快捷方式。 nums [-n]语法获取第n个到最后一个元素。示例:
nums = [1,2,3,1,3]
nums[-2] #returns 1
nums[-3] #returns 3