AttributeError:'map'obejct没有属性'index'(python 3)

Soh*_*ony 5 python python-3.x

当我尝试将旧的python代码库运行到python3时,我遇到了运行时错误.代码如下所示.

index = map(lambda x: x[0], self.history).index(state)
Run Code Online (Sandbox Code Playgroud)

fur*_*ras 10

在Python 3 map中没有返回list但是map object- 请参阅:

index = map(lambda x: x[0], [(1,2),(3,4)])
print( type(index) )
# <class 'map'>
Run Code Online (Sandbox Code Playgroud)

你必须使用 list()

index = list(map(lambda x: x[0], self.history)).index(state)
Run Code Online (Sandbox Code Playgroud)