我有一個python 3的問題。我得到python 2.7代碼,此刻我嘗試更新它。我得到的錯誤「類型‘地圖’對象沒有LEN()」在這一部分:'map'類型的對象有沒有len() - Python 3
str(len(seed_candidates))
之前,我初始化這樣的:
seed_candidates = set()
for word in wordlist:
seed_candidates.add(word)
因此,有人可以解釋我是什麼要做
我有一個python 3的問題。我得到python 2.7代碼,此刻我嘗試更新它。我得到的錯誤「類型‘地圖’對象沒有LEN()」在這一部分:'map'類型的對象有沒有len() - Python 3
str(len(seed_candidates))
之前,我初始化這樣的:
seed_candidates = set()
for word in wordlist:
seed_candidates.add(word)
因此,有人可以解釋我是什麼要做
在Python 3,map
返回一個迭代器不是一個列表:
>>> L = map(str, range(10))
>>> print(L)
<map object at 0x101bda358>
>>> print(len(L))
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: object of type 'map' has no len()
可以CONVER t將其放入一個列表,然後從那裏得到的長度:
>>> print(len(list(L)))
10
我認爲這是一個規範的問題/答案。上述問題是重複的。 –
它適用於我。發佈一個完整的例子來說明問題。你甚至沒有在上面的代碼中的任何地方調用'map'。 – interjay