¿Cómo usar cmp () en Python 3?

No puedo hacer que el comando cmp() funcione.

Aquí está el código:

 a = [1,2,3] b = [1,2,3] c = cmp(a,b) print (c) 

Estoy recibiendo el error:

 Traceback (most recent call last): File "G:\Dropbox\Code\a = [1,2,3]", line 3, in  c = cmp(a,b) NameError: name 'cmp' is not defined [Finished in 0.1s] 

Como se mencionó en los comentarios, cmp no existe en Python 3. Si realmente lo quieres, puedes definirlo tú mismo:

 def cmp(a, b): return (a > b) - (a < b) 

que se toma del original What's New In Python 3.0 . Sin embargo, es bastante raro, aunque no es inaudito, que realmente sea necesario, por lo que es posible que desee pensar si realmente es la mejor manera de hacer lo que sea que esté haciendo.

En Python 3.x puede import operator y usar eq() , lt() , etc. del módulo del operador, en lugar de cmp()