2016-09-28 1 views
1

Ich versuche, die längste Folge von Zahlen in einer Liste mit dem folgenden Code‚int‘ Objekt ist nicht aufrufbar, wenn groupby mit

from itertools import groupby 
ggg = groupby([1,2,3,3,3,5,88,9,9,9,9,9,9,9,1,1,1,2,2,3,3,3,3,3]) 
max(ggg, key=lambda k: len(list(k[1]))) 

jedoch zu finden, die ich den Fehler ‚int‘ Objekt erhalten, ist nicht aufrufbar . Außerdem verwende ich Python 3.

+4

Wahrscheinlich haben Sie einer Variablen mit dem Namen 'max',' len' oder 'list' irgendwann einen' int' zugewiesen. Dein Code funktioniert für mich. – FamousJameous

Antwort

0

Der Code gut funktioniert für mich:

>>> from itertools import groupby 
>>> ggg = groupby([1,2,3,3,3,5,88,9,9,9,9,9,9,9,1,1,1,2,2,3,3,3,3,3]) 
>>> max(ggg, key=lambda k: len(list(k[1]))) 
(9, <itertools._grouper object at 0x019973F0>) 

Wie @FamousJameous erwähnt, scheint es, dass eine der Funktionen, die Sie wurde zu einer ganzen Zahl zugewiesen verwenden. Dies ist eine gute Illustration, warum Sie sollten vorsichtig mit welchen Variablen Namen wählen Sie, da sie vorhandene Funktionen abwischen können. Bedenken Sie:

>>> x = [1,2,3] 
>>> len = len(x) 
>>> len(x) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
TypeError: 'int' object is not callable 
0

Ihr Code funktioniert für mich in Python 3. Meine beste Vermutung ist, dass Ihr Problem herkommt Zuordnung len, list oder max ein int zu sein. Zum Beispiel:

>>> list_a = [1, 2] 
>>> len(list_a) 
2 
>>> len = 4 
>>> len(list_a) 
Traceback (most recent call last): 
    File "<pyshell#3>", line 1, in <module> 
    len(list_a) 
TypeError: 'int' object is not callable 
+0

** BITTE NICHT TEXT als Bilder **. Kopieren Sie den Text und fügen Sie ihn in Ihre Frage ein. Bilder sind nicht durchsuchbar und können von Bildschirmlesern nicht für Personen mit Sehbehinderungen interpretiert werden. Verwenden Sie den Link [Bearbeiten], um Ihre Frage zu ändern. Weitere Informationen finden Sie unter [this] (http://meta.stackoverflow.com/a/285557/1426065). – MattDMo

Verwandte Themen