IIC2613-Inteligencia-Artificial-2021-2 / Syllabus

Repositorio base del curso, donde se publicarán enunciados, ayudantías y se resolverán dudas.
32 stars 6 forks source link

Windows: Error al ejecutar main.py en Windows. El sistema no puede encontrar la ruta especificada (/usr/bin/env). #21

Closed ignacioarteaga99 closed 3 years ago

ignacioarteaga99 commented 3 years ago

Al correr el código principal, sin hacer ninguna modificación me aparece el siguiente output : "El sistema no puede encontrar la ruta especificada"

VicenteMerino commented 3 years ago

puede ser que estes tratando de correr el programa con la terminal en otro folder?

ignacioarteaga99 commented 3 years ago

Esto aparece en la terminal: /usr/bin/env python "g:\Mi unidad\8 SEMESTRE 4 AÑO\Inteligencia Artificial\GitHub\tarea-1-2021-2-ignacioarteaga99\main.py"

No creo que sea lo que dices ya que hice click derecho en la carpeta donde estaba el main y desde ahí abrí el VSCode

Dietr1ch commented 3 years ago

Puedes probar correr python.exe main.py?

El script dice que se tiene que correr con /env/usr/env python, y en windows al parecer no intentan emular env

ignacioarteaga99 commented 3 years ago

Probé con python.exe main.py en la cmd y empieza a funcionar! El tema es que no sé como hacer que funcione en el VSCode.

Dietr1ch commented 3 years ago

Buena!

Hmm, ni idea de VSCode, te puedo sugerir cambiarte a Emacs y Linux? :P

Ahora, en serio, voy a probarlo en windows, pero me voy a demorar un poco más pq mi partición de windows sólo tiene steam instalado.

Mientras tanto, si alguien sabe se agradece la respuesta.

Dietr1ch commented 3 years ago

Acabo de probar en VSCodium en Win10.

vscodium-pytest

ignacioarteaga99 commented 3 years ago

Gracias profe! Cuando lo corro en la terminal no hay problema, sin embargo, al correr el programa main.py en si me tira el siguiente error:

Solving this Grid2D problem with the '<class 'search.problems.grid.board2d.Grid2DManhattanDistance'>' heuristic,
Traceback (most recent call last):
  File "g:\Mi unidad\8 SEMESTRE 4 A�O\Inteligencia Artificial\GitHub\tarea-1-2021-2-ignacioarteaga99\main.py", line 315, in <module>
    main()
  File "g:\Mi unidad\8 SEMESTRE 4 A�O\Inteligencia Artificial\GitHub\tarea-1-2021-2-ignacioarteaga99\main.py", line 311, in main
    compare(algorithms, problem, heuristic_class)
  File "g:\Mi unidad\8 SEMESTRE 4 A�O\Inteligencia Artificial\GitHub\tarea-1-2021-2-ignacioarteaga99\main.py", line 84, in compare
    print(problem.start_to_str())
  File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python37\lib\encodings\cp1252.py", line 19, in encode
    return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 13-19: character maps to <undefined>

Me pregunto si está bien con que únicamente corra en la terminal y desde ahí trabajo o si tiene que ser en el código mismo, porque la verdad me es súper molesto que me tire error al ejecutar el main, ya que no sé si se está ejecutando como debería y como al resto de mis compañeros.

ignacioarteaga99 commented 3 years ago

¿Qué debería ocurrir al yo correr el programa main.py desde el editor de códigos? Porque eso me da un punto de partida para saber si mi programa está bien y puedo o no comenzar a trabajar con él

Dietr1ch commented 3 years ago

Cuando lo corro en la terminal no hay problema.

Entonces funciona bien. main.py es un script de consola y asume soporte de unicode y colores.

sin embargo, al correr el programa main.py en si me tira el siguiente error,

Solving this Grid2D problem with the '<class 'search.problems.grid.board2d.Grid2DManhattanDistance'>' heuristic,
Traceback (most recent call last):
  File "g:\Mi unidad\8 SEMESTRE 4 A�O\Inteligencia Artificial\GitHub\tarea-1-2021-2-ignacioarteaga99\main.py", line 315, in <module>
    main()
  File "g:\Mi unidad\8 SEMESTRE 4 A�O\Inteligencia Artificial\GitHub\tarea-1-2021-2-ignacioarteaga99\main.py", line 311, in main
    compare(algorithms, problem, heuristic_class)
  File "g:\Mi unidad\8 SEMESTRE 4 A�O\Inteligencia Artificial\GitHub\tarea-1-2021-2-ignacioarteaga99\main.py", line 84, in compare
    print(problem.start_to_str())
  File "C:\Users\LENOVO\AppData\Local\Programs\Python\Python37\lib\encodings\cp1252.py", line 19, in encode
    return codecs.charmap_encode(input,self.errors,encoding_table)[0]
UnicodeEncodeError: 'charmap' codec can't encode characters in position 13-19: character maps to <undefined>

Esto es un problema de encoding, y no sé dónde está corriendo. Si es que esto abre el terminal ordinario de Windows, cmd.exe, definitivamente no va a funcionar.

Me pregunto si está bien con que únicamente corra en la terminal y desde ahí trabajo o si tiene que ser en el código mismo, porque la verdad me es súper molesto que me tire error al ejecutar el main, ya que no sé si se está ejecutando como debería y como al resto de mis compañeros.

Te funciona en el terminal de VSCode, que es un terminal mejor que el que viene en Windows. En general es súper molesto trabajar en Windows por problemas como estos, pero la verdad no entiendo cuál es el problema con simplemente usar el terminal de VSCode.

ignacioarteaga99 commented 3 years ago

Estoy tratando de utilizar el terminal de VSCode y me tira ese error de encoding. Por favor ayuda que ya he perdido como 4 días en los que no he podido avanzar.

Dietr1ch commented 3 years ago

Estoy tratando de utilizar el terminal de VSCode y me tira ese error de encoding. Por favor ayuda que ya he perdido como 4 días en los que no he podido avanzar.

:thinking:

Gracias profe! Cuando lo corro en la terminal no hay problema, sin embargo, al correr el programa main.py en si me tira el siguiente error:

O sea, python main.py desde cualquier terminal, VSCode o cmd.exe, te tira ese error de encoding?

Puedes probar con Python 3.8? Yo estaba usando la 3.8.8 según la screenshot y tu error dice que usas Python 3.7.

vWing7 commented 3 years ago

Hola, yo descargué el codigo base y lo corrí con python 3.7.9 en VSCode, Windows, y me funciona bien.

Me podrías dar más info de tu setup?, podria ser que estes usando otra versión de python que tienes instalada?, o que estés corriendo con la extensión de WSL?

Además cuando corres en vscode, en la esquina inferior izquierda, que version de python aparece? quizas un screenshot de vscode cuando corres puede servir también.

Dietr1ch commented 3 years ago

BTW, el main también me funciona bien, desde ambos terminales. El único problema es que cmd no soporta colores y se ve output basura, pero sería fácil de arreglar, o aún más fácil cambiar el terminal por uno que tenga menos de 30 años.

Algo está roto con tu setup de Python. Puedes instalar Anaconda?

IMG_20210916_200549_976

IMG_20210916_201047_835

ignacioarteaga99 commented 3 years ago

Estoy intentando correrlo desde el VSCode, actualicé a la versión 3.9.7 de Python y aún así no funciona. image

Dietr1ch commented 3 years ago

Y probaste instalando este paquete que dicen al buscar "Windows UnicodeEncodeError"?

https://stackoverflow.com/a/32176732

FeBalla commented 3 years ago

Como no hay nueva actividad, cerraré la issue por ahora