当前位置 : 主页 > 编程语言 > python >

解决:TypeError: 'list' object is not callable

来源:互联网 收集:自由互联 发布时间:2022-07-05
如果list变量和list函数重名,会有什么后果呢?我们可以参考如下代码: list = ['泡芙', '汤圆', '鱼儿', '骆驼'] tup_1 = (1, 2, 3, 4, 5) tupToList = list(tup_1) print(tupToList) 代码运行后出错了,出错

如果list变量和list函数重名,会有什么后果呢?我们可以参考如下代码:

list = ['泡芙', '汤圆', '鱼儿', '骆驼']

tup_1 = (1, 2, 3, 4, 5)
tupToList = list(tup_1)

print(tupToList)

代码运行后出错了,出错原因是TypeError: 'list' object is not callable

Traceback (most recent call last):
File "D:/python_workshop/python6/lesson3_list.py", line 6, in <module>
tupToList = list(tup_1)
TypeError: 'list' object is not callable

callable()是python的内置函数,用来检查对象是否可被调用,可被调用指的是对象能否使用()括号的方法调用

在如上代码中,由于变量list和函数list重名了,所以函数在使用list函数时,发现list是一个定义好的列表,而列表是不能被调用的,因此抛出一个类型错误

 

解决办法:我们只需修改变量名list就可以了:

list_1 = ['泡芙', '汤圆', '鱼儿', '骆驼']

tup_1 = (1, 2, 3, 4, 5)
tupToList = list(tup_1)

print(tupToList)

运行后和结果是正常的:

[1, 2, 3, 4, 5]

因此,在命名变量时要注意,应避免和python的函数名、关键字冲突。


上一篇:字典中键重复时
下一篇:没有了
网友评论