python-3.x - found - tensorflow version python
¿TensorFlow 1.9 soporta Python 3.7? (9)
Aún no. Parece que hay algunas variables llamadas "async", que se han convertido en una palabra clave en 3.7. No debería ser demasiado difícil de arreglar, pero sigue siendo un problema.
Fuente: https://github.com/tensorflow/tensorflow/issues/20444
Estoy dudando si bajar a Python 3.6 o instalar una nueva versión de TensorFlow.
¿TensorFlow 1.9 es compatible con Python 3.7?
De acuerdo con los comentarios en github, consulte https://github.com/tensorflow/tensorflow/issues/20517#issuecomment-457185528
por miembro av8ramit "Nuestro objetivo es probar y tener los binarios de python de Windows y Ubuntu por rc2 o el oficial". la fecha de lanzamiento estimada para 2019-02-03
sin embargo, en https://github.com/winpython/winpython/issues/687 se puede leer de un colaborador de winpython: "Tensorflow-2 es 2019, Tensorflow-1 en Python-3.7 aún no está a la vista"
Encontré esto para trabajar después de buscar por un tiempo.
Como Tensorflow solo admite Python 3.6 a partir de ahora, puede instalar una versión diferente de Python junto con la estándar. Aquí están los pasos que seguí:
- Descargue el archivo Python3.6 tgz desde el sitio web oficial (por ejemplo, Python-3.6.6.tgz)
- Desempaquete con
tar -xvzf Python-3.6.6.tgz
-
cd Python-3.6.6
- ejecutar
./configure
- ejecute
make altinstall
para instalarlo (install
explicación dealtinstall
vsaltinstall
aquí Diferencias en los detalles entre "make install" y "make altinstall" )
Normalmente encontrará su nueva instalación de python en /usr/local/bin
. Ahora puedes crear un nuevo virtualenv especificando la versión de python con:
-
virtualenv --python=python3.6 env3.6
- Entra en el virtualenv ejecutando el comando
source env3.6/source/bin/activate
. - Instala tensorflow con el clásico
pip install tensorflow
- Lucro
Hay un whl construido aquí. Sin embargo, en mi ejecución fue la versión de la CPU.
Probablemente no todavía.
En primer lugar, es probable que obtenga un SyntaxError: invalid syntax
porque algunos parámetros y variables en el módulo pywrap_tensorflow_internal.py
tienen el nombre async
que es una palabra clave reservada en Python 3.7.0 (vea también esta post ).
Sin embargo, puede resolver esto simplemente cambiando el nombre de todos estos ( Ctrl + R
y Replace All
) de async
a, por ejemplo, async1
.
El problema es que probablemente obtendrás un ImportError: No module named ''_pywrap_tensorflow_internal''
que quizás se pueda arreglar para cualquier versión anterior a Python 3.7.0 como lo sugiere esta post en , pero personalmente no pude arreglarlo en mi computadora portátil con Python 3.7.0.
En consecuencia, simplemente bajé de categoría a Python 3.6.6 y ahora Tensorflow funciona bien.
Pude instalar Tensorflow 1.12.0 con Python 3.7 en MacOS, con el siguiente comando.
sudo python3 -m pip install --upgrade https://storage.googleapis.com/tensorflow/mac/cpu/tensorflow-1.12.0-py3-none-any.whl
a partir del 26 de agosto, hay una actualización en el sitio de github de tensorflow https://github.com/tensorflow/tensorflow/pull/21202
Tensorflow 1.13.1 ahora es compatible con Python 3.7.
¡Finalmente me funcionó!
En Python 3.6.4 (incluso 3.6.5 falló para mí) Instale Python3.6.4 desde aquí: https://www.python.org/downloads/mac-osx/
Si estás enfrentando problemas con los paquetes Python que ya tenías en tu versión anterior, simplemente revertirlo usando esta publicación: ubicación de python en mac osx