1. 程式人生 > >python3下使用map()函式返回導致不能直接使用的解決辦法

python3下使用map()函式返回導致不能直接使用的解決辦法

例如:

在Python3中使用下面的語句,會報錯TypeError: float() argument must be a string or a number, not 'map'

np.array(map(float, line.strip().split(' ')), dtype=np.float32)

原因:

python3下的map()函式返回型別為iterators,不再是list,所以可將上述語句修改為

np.array(list(map(float, line.strip().split(' '))), dtype=np.float32))
即可