Preguntas etiquetadas con python

214
Python creando un diccionario de listas

Quiero crear un diccionario cuyos valores son listas. Por ejemplo: { 1: ['1'], 2: ['1','2'], 3: ['2'] } Si lo hago: d = dict() a = ['1', '2'] for i in a: for j in range(int(i), int(i) + 2): d[j].append(i) Me sale un KeyError, porque d [...] no es una lista. En este caso, puedo agregar...

213
Python __str__ versus __unicode__

¿Existe una convención de Python sobre cuándo debe implementar __str__()versus __unicode__()? He visto que las clases se anulan con __unicode__()más frecuencia __str__()pero no parece ser consistente. ¿Existen reglas específicas cuando es mejor implementar una versus la otra? ¿Es necesario / una...

213
¿Por qué usar clases base abstractas en Python?

Debido a que estoy acostumbrado a las viejas formas de escribir pato en Python, no entiendo la necesidad de ABC (clases base abstractas). La ayuda es buena sobre cómo usarlos. Traté de leer la justificación en el PEP , pero se me pasó por la cabeza. Si estaba buscando un contenedor de secuencia...

213
¿Cómo imprimir la clave de un diccionario?

Me gustaría imprimir una clave de diccionario Python específica: mydic = {} mydic['key_name'] = 'value_name' Ahora puedo verificar si mydic.has_key('key_name'), pero lo que me gustaría hacer es imprimir el nombre de la clave 'key_name'. Por supuesto que podría usar mydic.items(), pero no quiero...

213
Sobrecarga de la función Python

Sé que Python no admite la sobrecarga de métodos, pero me he encontrado con un problema que parece que no puedo resolver de una manera agradable Pythonic. Estoy haciendo un juego donde un personaje necesita disparar una variedad de balas, pero ¿cómo escribo diferentes funciones para crear estas...

213
Comparación de Python None: ¿debo usar "is" o ==?

Mi editor me advierte cuando comparo my_var == None, pero no me avisa cuando lo uso my_var is None. Hice una prueba en el shell de Python y determiné que ambas son una sintaxis válida, pero mi editor parece estar diciendo que my_var is Nonees preferible. ¿Es este el caso, y si es así, por...