Python数据结构第n项代码错误

Python Data Structure nth item code error

我写了一些代码,但 运行 不正确。它应该遵循这个例子。有人可以帮我弄清楚我做错了什么吗?谢谢。

    >>> nth_item(['one', 'two', 'three'], 1)
    'one'
    >>> nth_item(['one', 'two', 'three'], 3)
    'three'
    >>> nth_item(['one', 'two', 'three'], 0)
    >>> nth_item(['one', 'two', 'three'], -1)
    >>> nth_item(['one', 'two', 'three'], 1, reverse=True)
    'three' 
def nth_item(item_list, n, reverse=False):
    length = len(item_list)
    if n < 1 or n > length:
        return None
    if reverse:
        return item_list[length-n]
    return item_list[n-1]
    pass

I 运行 相同的函数并将 return 值解析为多个变量 (a,b,c,d ,e).我只删除了 pass 语句,因为它永远不会被使用。

def nth_item(item_list, n, reverse=False):
    length = len(item_list)
    if n < 1 or n > length:
        return None
    if reverse:
        return item_list[length-n]
    return item_list[n-1]


# run the function
a = nth_item(['one', 'two', 'three'], 1)
b = nth_item(['one', 'two', 'three'], 3)
c = nth_item(['one', 'two', 'three'], 0)
d = nth_item(['one', 'two', 'three'], -1)
e = nth_item(['one', 'two', 'three'], 1, reverse=True)


# show results
print(a)
print(b)
print(c)
print(d)
print(e)

结果如下:

one
three
None
None
three

效果很好,您是否期待不同的东西?