python - tamaño - TypeError: el objeto ''list'' no se puede llamar al intentar acceder a una lista
pasar una lista como parametro en python (7)
Estoy tratando de ejecutar este código donde tengo una lista de listas. Necesito agregar a listas internas, pero obtengo el error
TypeError: ''list'' object is not callable.
¿Alguien puede decirme qué estoy haciendo mal aquí?
def createlists():
global maxchar
global minchar
global worddict
global wordlists
for i in range(minchar, maxchar + 1):
wordlists.insert(i, list())
#add data to list now
for words in worddict.keys():
print words
print wordlists(len(words)) # <--- Error here.
(wordlists(len(words))).append(words) # <-- Error here too
print "adding word " + words + " at " + str(wordlists(len(words)))
print wordlists(5)
Está intentando llamar a wordlists
aquí:
print wordlists(len(words)) <--- Error here.
Tratar:
print wordlists[len(words)]
Para acceder a los elementos de una lista, debe usar los corchetes ( []
) y no el paréntesis ( ()
).
En lugar de:
print wordlists(len(words))
necesitas usar:
print worldlists[len(words)]
Y en lugar de:
(wordlists(len(words))).append(words)
necesitas usar:
worldlists[len(words)].append(words)
Para obtener elementos de una lista, debe usar la list[i]
lugar de la list(i)
.
Prueba las wordlists[len(words)]
. ()
es una llamada a función. Cuando haces wordlists(..)
, Python piensa que estás llamando a una función llamada wordlists
que resulta ser una list
. De ahí el error.
También recibí el error cuando llamé a una función que tenía el mismo nombre que otra variable clasificada como lista.
Una vez que resolví la nomenclatura, se resolvió el error.
Verifique su nombre de archivo en el que guardó su programa. Si el nombre del archivo es wordlists
entonces obtendrá un error. Su nombre de archivo no debe ser el mismo que cualquiera de los métodos {funciones} que usa en su programa.
listas de palabras no es una función, es una lista. Necesitas el subíndice del corchete
print wordlists[len(words)]