937135952 发表于 2020-8-10 20:09:52

关于字典如何转化为列表

代码如下:
a={'one':'111','two':'2'}
print(a.keys())

include = ["一起", "这样"]

for key in list(a.keys()):            
    if key in include:         
      continue
    else:
      del a

错误类型:
TypeError: 'list' object is not callable

是不是因为字典不能通过list()转为列表?可是我看网上的教程都是用这种方式将字典转化为列表的...希望大佬能帮助我解答一下疑惑

zltzlt 发表于 2020-8-10 20:13:53

本帖最后由 zltzlt 于 2020-8-10 20:17 编辑

字典转化成列表?你想要什么效果

而且我这里用你的代码测试没有报错

小小小菜菜菜 发表于 2020-8-10 20:20:35

我这里运行没问题。我怀疑你是不是后续把某个变量重新赋值导致的

Twilight6 发表于 2020-8-10 20:29:06

你前面的代码可能把 list 直接赋值成一个列表了,你删掉这个 list 对象就可以了

del list

1q23w31 发表于 2020-8-10 20:40:48

或者文件名为list,如果是换个名称

937135952 发表于 2020-8-11 08:44:46

早上又试了一下,我发现是这样,如果前面有运行出错的情况,后面再运行就会报TypeError: 'list' object is not callable。如果打开软件第一次运行这个代码就能正常运行。但其实我不是很懂...前面有报错也跟这个无关啊,...我要点那个remove all variables然后运行这个代码就可以了

求资专用 发表于 2020-8-11 09:00:52

list对象不能用函数形式调用,就是不能callable。
简单来说就是list变量和list函数重名了。你在出现错误的时候试一试命令行打list,应该会出现你现在list的值。
解决方法是运行前del list
页: [1]
查看完整版本: 关于字典如何转化为列表