Python - ¿porqué me sale error de sintaxis en "d"

 
Vista:
sin imagen de perfil
Val: 5
Ha disminuido su posición en 15 puestos en Python (en relación al último mes)
Gráfica de Python

¿porqué me sale error de sintaxis en "d"

Publicado por Hellen (2 intervenciones) el 05/10/2020 22:16:48
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
class Producto:
    # atributos
    costoinproduct1=0
    impuestoproduct1=0
    costoinproduct2=0
    impuestoproduct2=0
    costototalproduct1=0
    costototalproduct2=0
    totalapagar=0
 
    #método calcularCostototalproduct1()
    def calcularCostototalproduct1(self):
        self.costoinproduct1=int(input("Ingresa costo inicial producto1:"))
        self.impuestoproduct1=int(input("Ingresa impuesto producto 1:","%:"))
        self.costototalproduct1=self.costoinproduct1+[costoinproduct1*(impuestoproduct1/100)]
        print("Costo total producto 1=",self.costototalproduct1,"$")
 
    #método calcularCostototalproduct2()
    def calcularCostototalproduct2(self):
        self.costoinproduct2=int(input("Ingresa costo inicial producto2:"))
        self.impuestoproduct2=int(input("Ingresa impuesto producto1:","%:"))
        self.costototalproduct2=self.costoinproduct2+[costoinproduct2*(impuestoproduct2/100)]
        print("Costo total producto 2=",self.costototalproduct2,"$"
 
    #método calcularTotalapagar()
    def calcularTotalapagar(self):
        self.costototalproduct1=int(input("Ingresa costo total producto1:"))
        self.costototalproduct2=int(input("Ingresa costo total producto2:"))
        self.totalapagar=self.costototalproduct1+costototalproduct2
        print("Total a pagar=",self.totalapagar,"$"
 
#define un objeto de la clase Producto
miproducto=Producto()
 
#se evia el mensaje al objeto para que actue
miproducto.calcularCostototalproduct1()
miproducto.calcularCostototalproduct2()
miproducto.calcularTotalapagar()
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Jaime
Val: 526
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

¿porqué me sale error de sintaxis en "d"

Publicado por Jaime (136 intervenciones) el 05/10/2020 22:33:34
Falta más detalles del error.
Por el código que publicaste, a los print le falta cerrar el ).
Tambien te hace falta el constructor, Yo creo que por ahí va el error.
1
2
3
4
5
6
7
8
def __init__(self):
    self.costoinproduct1=0
    self.impuestoproduct1=0
    self.costoinproduct2=0
    self.impuestoproduct2=0
    self.costototalproduct1=0
    self.costototalproduct2=0
    self.totalapagar=0
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

¿porqué me sale error de sintaxis en "d"

Publicado por yoyyo (1 intervención) el 06/10/2020 00:23:12
hola: hay muchas cosas que no entiendo,quizá podrías explicar que pretendés lograr, pero mientras tanto vamos con lo que se ve:
1
2
3
4
5
6
7
8
9
10
# atributos
costoinproduct1=0
#tec.
 
#método calcularCostototalproduct1()
def calcularCostototalproduct1(self):
     self.costoinproduct1=int(input("Ingresa costo inicial producto1:"))#para esto no hacía falta declararlo antes
     self.impuestoproduct1=int(input("Ingresa impuesto producto 1:","%:")) #dará error, input toma un valor no dos, no sé que se supone es%
    self.costototalproduct1=self.costoinproduct1+[costoinproduct1*(impuestoproduct1/100)] #acá querés sumar un entero y una lista es imposible
    print("Costo total producto 2=",self.costototalproduct2,"$"  #acá te falta cerrar la función print, o sea te falta ")"

veo que ambas funciones con iguales, más allá de que se pueden resumir a una, están copiadas ya que tienen exactamente los mismos errores
te muestro una corregida, después vos arregla la otra si la seguis usando, pero ¿para qué crear clases o funciones que hacen lo mismo?

1
2
3
4
5
def calcularCostototalproduct1(self):
        costoinproduct1=int(input("Ingresa costo inicial producto1:"))
        impuestoproduct1=int(input("Ingresa impuesto producto 1:"))
        costototalproduct1= costoinproduct1+(costoinproduct1*(impuestoproduct1/100))
        print("Costo total producto 1=",costototalproduct1,"$")

y podés borrar lo que tenés marcado como atributos. Por ejemplo en este caso :
1
2
3
4
5
6
7
8
# atributos
#costoinproduct1=0
#impuestoproduct1=0
costoinproduct2=0
impuestoproduct2=0
costototalproduct1=0
costototalproduct2=0
totalapagar=0

lo del constructor no es necesario, ya que nunca los estás declarando en el inicio de la clase.
Saludos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Jaime
Val: 526
Bronce
Ha mantenido su posición en Python (en relación al último mes)
Gráfica de Python

¿porqué me sale error de sintaxis en "d"

Publicado por Jaime (136 intervenciones) el 06/10/2020 02:56:37
Lo del constructor lo digo porque quieres inicializar los atributos. Es más elegante hacerlo con un constructor.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

¿porqué me sale error de sintaxis en "d"

Publicado por yoyyo (1 intervención) el 06/10/2020 03:44:10
jajaja ¿elegante? ¿leíste el código? ¿para qué lo va escribir si no lo va a usar? Todo lo que menciona como atributos está al vicio!!! y ya que estamos no es ese el error, ¿ahora es elegancia y antes solucionaba un error.? jajajaja
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
-2
Comentar