Search code examples
pythonpython-3.xtensorflowwindows-8python-import

TensorFlow import error at Windows 8


I just installed TensorFlow via pip3 at Windows 8, using python 3.5.2 (which said Successfully installed tensorflow-1.2.1). However, when I want to load it, it shows me a long error-log saying that it didn't find many modules.

C:\Users\IQS-1>python
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:18:55) [MSC v.1900 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information.
>>>
>>>
>>>
>>>
>>>
>>> import tensorflow as tf
Traceback (most recent call last):
  File "C:\Users\IQS-1\AppData\Local\Programs\Python\Python35\lib\site-packages\
tensorflow\python\pywrap_tensorflow_internal.py", line 18, in swig_import_helper

    return importlib.import_module(mname)
  File "C:\Users\IQS-1\AppData\Local\Programs\Python\Python35\lib\importlib\__in
it__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 986, in _gcd_import
  File "<frozen importlib._bootstrap>", line 969, in _find_and_load
  File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 666, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 577, in module_from_spec
  File "<frozen importlib._bootstrap_external>", line 906, in create_module
  File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
ImportError: DLL load failed: Das angegebene Modul wurde nicht gefunden.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\IQS-1\AppData\Local\Programs\Python\Python35\lib\site-packages\
tensorflow\python\pywrap_tensorflow.py", line 41, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "C:\Users\IQS-1\AppData\Local\Programs\Python\Python35\lib\site-packages\
tensorflow\python\pywrap_tensorflow_internal.py", line 21, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "C:\Users\IQS-1\AppData\Local\Programs\Python\Python35\lib\site-packages\
tensorflow\python\pywrap_tensorflow_internal.py", line 20, in swig_import_helper

    return importlib.import_module('_pywrap_tensorflow_internal')
  File "C:\Users\IQS-1\AppData\Local\Programs\Python\Python35\lib\importlib\__in
it__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
ImportError: No module named '_pywrap_tensorflow_internal'

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "C:\Users\IQS-1\AppData\Local\Programs\Python\Python35\lib\site-packages\
tensorflow\__init__.py", line 24, in <module>
    from tensorflow.python import *
  File "C:\Users\IQS-1\AppData\Local\Programs\Python\Python35\lib\site-packages\
tensorflow\python\__init__.py", line 49, in <module>
    from tensorflow.python import pywrap_tensorflow
  File "C:\Users\IQS-1\AppData\Local\Programs\Python\Python35\lib\site-packages\
tensorflow\python\pywrap_tensorflow.py", line 52, in <module>
    raise ImportError(msg)
ImportError: Traceback (most recent call last):
  File "C:\Users\IQS-1\AppData\Local\Programs\Python\Python35\lib\site-packages\
tensorflow\python\pywrap_tensorflow_internal.py", line 18, in swig_import_helper

    return importlib.import_module(mname)
  File "C:\Users\IQS-1\AppData\Local\Programs\Python\Python35\lib\importlib\__in
it__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 986, in _gcd_import
  File "<frozen importlib._bootstrap>", line 969, in _find_and_load
  File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 666, in _load_unlocked
  File "<frozen importlib._bootstrap>", line 577, in module_from_spec
  File "<frozen importlib._bootstrap_external>", line 906, in create_module
  File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
ImportError: DLL load failed: Das angegebene Modul wurde nicht gefunden.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\IQS-1\AppData\Local\Programs\Python\Python35\lib\site-packages\
tensorflow\python\pywrap_tensorflow.py", line 41, in <module>
    from tensorflow.python.pywrap_tensorflow_internal import *
  File "C:\Users\IQS-1\AppData\Local\Programs\Python\Python35\lib\site-packages\
tensorflow\python\pywrap_tensorflow_internal.py", line 21, in <module>
    _pywrap_tensorflow_internal = swig_import_helper()
  File "C:\Users\IQS-1\AppData\Local\Programs\Python\Python35\lib\site-packages\
tensorflow\python\pywrap_tensorflow_internal.py", line 20, in swig_import_helper

    return importlib.import_module('_pywrap_tensorflow_internal')
  File "C:\Users\IQS-1\AppData\Local\Programs\Python\Python35\lib\importlib\__in
it__.py", line 126, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
ImportError: No module named '_pywrap_tensorflow_internal'


Failed to load the native TensorFlow runtime.

See https://www.tensorflow.org/install/install_sources#common_installation_probl
ems

for some common reasons and solutions.  Include the entire stack trace
above this error message when asking for help.
>>> hello = tf.constant('Hello, TensorFlow!')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'tf' is not defined
>>>
>>>
>>> tf
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'tf' is not defined

I suspect that it does not find the correct directory to load the modules (similarly what has been asked here), but I wasn't able to fix it yet. I'm very grateful for any suggestions!


Solution

  • I am able to reproduce exactly the same error as you did in Windows 8.1 with Python 3.5.2 and TensorFlow 1.2.1 for CPU only.

    The root cause to this issue is because TensorFlow Windows installation requires the msvcp140.dll.

    You can install this DLL by installing the latest Microsoft Visual C++ 2015 Redistributable Update 3.

    I am able to resolve the issue you're encountering after installed the above package which contains the DLL TensorFlow requires.

    enter image description here

    Relevant reference:

    On Windows, running "import tensorflow" generates No module named "_pywrap_tensorflow" error

    Addendum:

    The same error is also reproducible on Windows 10 with the same Python and TensorFlow version as above.

    In addition, user can also install Microsoft Visual C++ Redistributable for Visual Studio 2017 to resolve the error above