Sto cercando di capire cosa non funziona in questo codice:Python Cmd, problema sottoclassi
#!/usr/bin/python
import cmd
class My_class (cmd.Cmd):
"""docstring for Twitter_handler"""
def __init__(self):
super(My_class, self).__init__()
if __name__ == '__main__':
my_handler = My_class()
Ecco l'errore che ottengo
Traceback (most recent call last):
File "main.py", line 12, in <module>
my_handler = My_class()
File "main.py", line 9, in __init__
super(My_class, self).__init__()
TypeError: super() argument 1 must be type, not classobj
Se cambio la superclasse di "my_class "a un oggetto funziona bene. Dove sto andando male?
È perché il modulo cmd viene riscritto in Python 3? – Teifion
No. È perché in Python 3.0 tutte le classi sono "nuove classi di stile". – Stephan202
(In realtà, un diff tra 2,5 e 3.0 cmd.py ti mostrerà che sono state apportate pochissime modifiche tra quelle versioni.) – Stephan202