Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/360.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 类型错误:';非类型';对象不能与列表一起订阅_Python_Python 3.x - Fatal编程技术网

Python 类型错误:';非类型';对象不能与列表一起订阅

Python 类型错误:';非类型';对象不能与列表一起订阅,python,python-3.x,Python,Python 3.x,我创建了一个函数,它接受要反转的数字列表 def getListBackward(number): reversedNumbers = number[::-1] #line with error ''' code that does stuff with reversed numbers below ''' EDIT: 这是调用getListBakcward的函数 def sumofreversed(numbers): total = getListBa

我创建了一个函数,它接受要反转的数字列表

def getListBackward(number):
    reversedNumbers = number[::-1] #line with error
    '''
    code that does stuff with reversed numbers below
    '''
EDIT:
这是调用getListBakcward的函数

def sumofreversed(numbers):
    total = getListBackward(numbers) + otherlist(numbers)
    return total
我通过用户输入获得数字,并将其作为参数传递。 但是,我遇到了以下错误:

TypeError: 'NoneType' object is not subscriptable

我做错了什么?如何解决此问题?

您没有将反向列表返回给被调用的,函数将返回
None
作为默认值,请尝试返回该值:

>>> def getListBackward(number):
...   return number[::-1]
>>> def sumofreversed(numbers):
...   total = getListBackward(numbers) + [1,2,3]
...   return total
>>> alist = [1,2,3,4,5]
>>> print getListBackward(alist)
[5, 4, 3, 2, 1]
>>> print sumofreversed(alist)
[5, 4, 3, 2, 1, 1, 2, 3]

一切正常。

根据回溯状态,编号为“无”。您是否还有其他代码可以显示,这可能会有所帮助?在发布调用此函数的代码时,您似乎传递了错误的
number
。错误出现在调用
getListBackward
的代码中,其值为
None
,而不是列表。或者,在
getListBackward
调用并返回
None
的代码中,或者在调用它并向其传递
None
的代码中。你必须弄清楚在你的代码中,当你期望一个列表时,你在哪里得到了一个
None
。@ODiogoSilva,它会给出一个不同的类型错误(
'NoneType'对象没有属性'\uu getitem'
)哦,哎哟,在python3上,它将是关于subscribtable的。在python2上,它将是关于
\uuu getitem\uu
。def getListBackward(number)函数已经在末尾返回了一个列表。这就是为什么我有点困惑,为什么它会给我这个错误(您是否可以给函数一个空列表,以便它返回一个
[]
?只需打印出它返回的值。我甚至不认为它返回任何值,因为它被卡在了那行代码上。=\n您可以发布回溯信息,以便我们找出错误的原因吗?