Articles of métodos

¿Cómo evitar múltiples planos si las condiciones en python?

Considere el fragmento: def check_conditions(range_of_numbers): #method returns a list containing messages list1 = [] if condition1: list1.append(“message1”) if condition2: list1.append(“message2”) if condition3: list1.append(“message3”) try: for i in range_of_numbers: int(i) except ValueError: list1.append(“message4”) return message Quiero tener una lista en los mensajes con solo si se cumplen las condiciones. No uso varios ifs, ya que se […]

función de python * args y ** kwargs con otros argumentos de palabras clave especificados

Tengo una clase de Python con un método que debería aceptar argumentos y argumentos de palabras clave de esta manera class plot: def __init__(self, x, y): self.x = x self.y = y def set_axis(self, *args, xlabel=”x”, ylabel=”y”, **kwargs): for arg in args: for key in kwargs: al llamar: plt = plot(x, y) plt.set_axis(“test1”, “test2″, xlabel=”new_x”, […]

¿Cómo sobrecargar el método __bool__ de Python?

Posible duplicado: definiendo “boolness” de una clase en python Pensé que esto debería imprimir “Falso”, ¿por qué está imprimiendo “Verdadero”? >>> class Foo(object): … def __bool__(self): … return False … >>> f = Foo() >>> if f: … print “True” … else: … print “False” … True >>>

Muy extraño comportamiento del operador ‘es’ con métodos.

¿Por qué es False el primer resultado, si no es True ? >>> from collections import OrderedDict >>> OrderedDict.__repr__ is OrderedDict.__repr__ False >>> dict.__repr__ is dict.__repr__ True

Comprensión de listas tipo Python en Java

Ya que Java no permite pasar métodos como parámetros, ¿qué truco usas para implementar la comprensión de listas tipo Python en Java? Tengo una lista (ArrayList) de cadenas. Necesito transformar cada elemento usando una función para obtener otra lista. Tengo varias funciones que toman una cadena como entrada y devuelvo otra cadena como salida. ¿Cómo […]

Python: asignar dinámicamente los métodos de clase

Esencialmente esto es lo que quiero lograr: class Move(object): def __init__(self, Attr): if Attr: self.attr = Attr if hasattr(self, “attr”): __call__ = self.hasTheAttr else: __call__ = self.hasNoAttr def hasNoAttr(self): #no args! def hasTheAttr(func, arg1, arg2): #do things with the args __call__ = hasNoAttr Sé que eso no funciona, solo usa hasNoAttr todo el tiempo. Mi […]

Python – Pasar argumentos a diferentes métodos de Argparse

Estoy escribiendo un script de Python relativamente simple que admite un par de comandos diferentes. Los diferentes comandos admiten diferentes opciones y quiero poder pasar las opciones analizadas por argparse al método correcto para el comando especificado. La cadena de uso se ve así: usage: script.py [-h] {a, b, c} … script.py: error: too few […]

¿Debo, y cómo, agregar métodos a int en python?

(Esta es una pregunta relacionada con el aprendizaje, así que cualquier consejo sobre por qué debo hacer o no hacer algo, así como los recursos recomendados para mejorar estas cosas, es más que bienvenido). Estoy tratando de aprender sobre la POO en python, y he hecho una clase simple de “Tiempo” como esta: class Time(object): […]

¿Python realmente crea todos los métodos enlazados para cada nueva instancia?

Estoy leyendo sobre las clases en Python (3.4) y por lo que entiendo, parece que cada nuevo objeto tiene sus propias instancias de métodos enlazados. class A: def __init__(self, name): self.name = name def foo(self): print(self.name) a = A(‘One’) b = A(‘Two’) print(a.foo == b.foo) La salida de esto es False . Esto me parece […]

¿Cómo encadenar vistas en Django?

Estoy implementando la excelente forma de contacto con django de James Bennett , pero he tenido un problema. Mi página de contacto no solo contiene el formulario, sino también información adicional de la página plana. Sin volver a escribir la vista existente que utiliza el formulario de contacto, me gustaría poder ajustar o encadenar las […]