-
Notifications
You must be signed in to change notification settings - Fork 68
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Problemas con if al modificar la condición #568
Comments
Hola @sofiuni, en primer lugar, como recomendación, si le estás entregando a la clase dcc el mago que contiene las criaturas y eso es lo que usas, es redundante que después le entregues dos veces más en diferentes formatos las criaturas, independientemente que después las uses o no, ya que las tienes en el mago y las modificas ahí, por lo que solo deberías entregar el mago. Por otra parte, con respecto a tu duda, estas segura de que lo tienes implementado exactamente igual en tu código? Porque al copiar y pegar lo que enviaste, tuve que cambiar Quedo atenta a tu respuesta! 😄 |
No esta asi, en mi codigo modifico bien los tres valores, luego llamo a uno de ellos el cual deberia ser False. pero entra igual en el if. Mi pregunta es por que entra al if, si no deberia ya que el valor es False. |
Ah que te refieres con modificar bien los tres valores? Lo que pasa es como te dije el código que muestras acá funciona bien, por lo que no te puedo ayudar si me muestras algo que sigue una lógica diferente. En respuesta a tu pregunta no debería entrar y en el código de acá no entra, por lo que te recomiendo que me digas como funciona exactamente el código que mencionas que falla, para poder ayudarte (sin copiar y pegar código de tu tarea). Quedo atenta a tu respuesta! 😄 |
Yo escribi eso tratando de explicar el mecanismo de la mejor manera posible, y no entiendo por que solo funciona aca, no se como mas explicarlo |
Ya lo que podemos hacer, es que en primer lugar, pruebes con el código que mandaste por acá y trates de encontrar las diferencias, ya que probablemente es una diferencia pequeña entre lo que está acá y tu código lo que hace que este funcione y el otro no. Y en el caso de que busques y no encuentres, puedes subir tu código a tu repositorio e indicarme el nombre del archivo y líneas de código donde ocurre esto, para revisarlo. Quedo atenta a tu respuesta! 😄 |
Mire pero no lo encuentro, ya esta subido, el problema empieza en la linea 172 y 174 de main.py, y cambio los valores a False en la funcion sanar_criatura() de DCC.py. Al sanar una criatura correctamente, si vuelves a intentar sanar criaturas no deberia aparecer, pero entra al if igual, y muestra la criatura como si no estubiera sana (true = no sana, false = sana) |
Realizaste push? pregunto porque me sale que el último fue hace 11 horas, y lo otro por favor especifica en que líneas se encuentra lo que me dices del archivo DCC.py |
106 en DCC.py |
y si ese es el ultimo push |
Al tratar de correr el main.py para ver lo que me mencionas el programa se cae y me muestra el siguiente error:
Por lo que no puedo ver lo que me comentas, ¿podrías arreglar esto y pushear para poder probar el código? |
A mi no me da este error, cual fue el input entregado? |
No me dejó entregar ningún input, solo corrí el main y se cayó. |
Que extraño, a mi no me pasa eso, igual voy a volver a hacer un push pero yo no tengo ese error |
ya hice el push |
Acabo de hacer pull y me sale el mismo error: |
talvez es esa linea del os.system("clear") que no funciona con windows o algo... igual esa la borre, no tengo idea de por que pasa eso, a mi no me da ningun error. Se va a acabar el tiempo pronto, espero podamos solucionarlo |
Pucha creo que el problema no es con esa línea de código, sino que en la línea 71 del main.py cuando haces alimento.tipo, el alimento es un str no una instancia. |
Hola @sofiuni ¿Podrías tratar de ser más un poco más clara con el problema que indicaste al principio de la issue? ¿En qué situación se produce? ¿Cuál es el camino que debes seguir para que se produzca el error? Si necesitas indicar partes de tu código, puedes crear una issue en tu repositorio personal y avisar para que así la revisemos. |
A mi no me da error pero tal vez este ultimo push (agrege una condicion por los tildes) podria arreglarlo |
El error que nos parece con @Dnpoblete: line 71, in anadir_alimento
print(alimento.tipo)
AttributeError: 'str' object has no attribute 'tipo' se debe a que no estas usando |
Y ahora? |
Además, fíjate que tu función Agrégale un |
No se arreglo al agregarle el False |
@sofiuni ¿podrías volver a replantear el problema que te llevo a hacer la issue? |
El problema es que no se esta cambiando el valor de estado_de_salud no se esta cambiando a False (aunque si se corre esa parte del codigo) y entra al if cuando no debe, por que no se esta cambiando a False |
Cuando se ejecuta correctamente, es decir, se sana la criatura, debe imprimir:
¿verdad? |
Si |
Por como está escrito tu código, es muy complicado revisar y solucionar tu error. 😞 Fíjate en los lugares donde se calculan las probabilidades, en esta issue #292 se habla de cuando debe cumplirse una probabilidad. Tal vez tu error, se deba a que actualmente el sanar una criatura tiene una baja probabilidad de ocurrencia. Además debes tener cuidado con la cantidad de lugares que almacenan la información. Tener información replicada en distintas partes, dificulta la actualización de los valores y puede generar problemas como este. Si bien, puede que no alcances a aplicar los cambios en esta tarea, tenlo en cuenta para las futuras evaluaciones del curso. Por mientras trata de encontrar el flujo y el error agregando distintos prints que te permitan ver con mayor facilidad la ejecución de tu tarea. En caso de que no logres arreglarlo, concéntrate en avanzar en otras parte de la tarea. Saludos y éxito con lo que queda de la tarea. |
Pero si se esta entrando a el if con la probabilidad por lo que ese no puede ser el problema, esta entrando al if de la funcion como muestran los prints, simplemente no se esta modificando el valor y no entiendo por que |
Tengo una clase grande que controla dos clases, una de ellas tiene una lista de objetos de clase b.
mi modelo se ve algo asi:
Despues tengo esta situacion:
El problema es que en mi codigo, esa condicion entra las dos veces. Por que pasa esto?
The text was updated successfully, but these errors were encountered: