2011-11-30 39 views
10
elif(listb[0] == "-test"): 
    run_all.set("testview") 
    listb.pop[0] 

ERROR: Exception in Tkinter callback Traceback (most recent call last): File "/tools/python/2.7.2/lib/python2.7/lib-tk/Tkinter.py", line 1410, in call return self.func(*args) File "./edit.py", line 581, in populate listb.pop[0] TypeError: 'builtin_function_or_method' object is not subscriptableTypeError: objeto '' builtin_function_or_method no se subscriptable

La línea # 581 está representado por última declaración del pop en el código de seguridad. run_all es un StringVar.

¿Por qué me sale este error y cómo puedo solucionarlo?

Respuesta

14

Creo que quieres

listb.pop()[0] 

La expresión listb.pop es una expresión válida en Python que se traduce en una referencia al método pop, pero en realidad no llamar a ese método. Debe agregar los paréntesis de abrir y cerrar para llamar al método.

+0

Gracias. Funcionó. – Ani

4

Está intentando acceder al pop como si fuera una lista o un tupple, pero no pop. Es un método.

3

en lugar de escribir listb.pop[0] escritura

listb.pop()[0] 
     ^
     | 
Cuestiones relacionadas