Hay muchas formas de llegar a un mismo resultado en Python, pero me gustaría saber como es mas "adecuado" hacerlo.
Por ejemplo, estoy empezando un script el cual me averigüe el valor de una resistencia a partir de sus colores (ya se que habrá miles hechos) y se me ocurren varias formas de hacerlo.
La primera es crear una clase resistencia
Código
class Resistencia(): def __init__(self,color1=None,color2=None,color3=None,color4=None,color5=None,color6=None): self.color1 = color1 self.color2 = color2 self.color3 = color3 self.color4 = color4 self.color5 = color5 self.color6 = color6
Con un método del tipo :
Código
y un método que calcule el valor total en base a los colores.....
def valor_color(self,color): if color == "negro": valor = 0 multiplicador = 1 tolerancia = None elif color == "marron": valor = 1 multiplicador = 10 tolerancia = 1 elif color == "rojo": valor = 2 multiplicador = 10 tolerancia = 2
Por otra parte se me ocurre crear una clase color con sus atributos para luego utilizarlos del tipo :
Código
class Color(): def ___init__(self, valor, multiplicador, tolerancia): self.valor = valor self.multiplicador = multiplicador self.tolerancia = tolerancia
y después instanciar varios objetos color con sus valores
Código
negro = Color() negro.valor = 0 negro.multiplicador = 1 negro.tolerancia = None marron = Color() marron.valor = 1 marron.multiplicador = 10 marron.tolerancia = None
Que opináis ? Cual sería mejor forma ? alguna otra sugerencia ?
Espero haberme explicado