error reversed():list不可调用

时间:2016-07-09 02:12:55

标签: python list typeerror

def dictrev():
    prompt = "Enter the key and value of a dictionary like this: 'key:value':"
    list = [];list_rev = [];i = 0
    while True:
        element = raw_input(prompt).strip().split(':')
        if element == ['.']:
            break
        list.append([]);list_rev.append([])
        print element
        print list(reversed(element))
        list[i] = element
        list_rev[i] = list(reversed(element))  
        i += 1
    print 'The dictionary you input is:'
    print dict((list))
    print '\nThe dictionary whose key and value are reversed is:'
    print dict((list_rev))

dictrev()

这是核心Python编程 7-7中的问题代码。

但是,当我运行该程序时,我在代码中得到了 TypeError:'list'对象不可调用

print list(reversed(element))

我所做的如下:

  1. 在Stackoverflow和google中搜索“list is not callable”主题,但我没有得到该方法;

  2. goole list()和reverse()的方法,但我认为我的代码没有任何问题

  3. 打印变量元素,element_reversed和元素类型。

  4. 将代码单独放在另一个程序中:

  5. l = ['a','b']

    print l

    print list(reversed(l))

    没有任何错误,比如'list object不可调用'。我很困惑!!!

    我已经做了我能做的事来解决这个问题。感谢大家的帮助。

1 个答案:

答案 0 :(得分:7)

看看这一行:

list = []

您覆盖了内置类型list