简体   繁体   中英

Tensorflow 2 works on Jupyter Notebook but not on VsCode

This code with tensorflow 2.2.0 works on Jupyter Notebook but gives error on VsCode.
I doubt "python.pythonPath" in settings.json which is autogenerated in VsCode.
Not sure how to config VsCode.

import tensorflow as tf
print(tf.__version__)
C:\Users\<User>\Anaconda3\envs\tf2\lib\site-packages\numpy\__init__.py:140: UserWarning: mkl-service package failed to import, therefore Intel(R) MKL initialization ensuring its correct out-of-the box operation under condition when Gnu OpenMP had already been loaded by Python process is not assured. Please install mkl-service package, see http://github.com/IntelPython/mkl-service
  from . import _distributor_init
Traceback (most recent call last):
  File "C:\Users\<User>\Anaconda3\envs\tf2\lib\site-packages\numpy\core\__init__.py", line 24, in <module>
    from . import multiarray
  File "C:\Users\<User>\Anaconda3\envs\tf2\lib\site-packages\numpy\core\multiarray.py", line 14, in <module>
    from . import overrides
  File "C:\Users\<User>\Anaconda3\envs\tf2\lib\site-packages\numpy\core\overrides.py", line 7, in <module>
    from numpy.core._multiarray_umath import (
ImportError: DLL load failed while importing _multiarray_umath: The specified module could not be found.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "c:\Users\<User>\Documents\Me\Lab\Programming\Python\Tensorflow\Tensorflow2\test.py", line 1, in <module>
    import tensorflow as tf
  File "C:\Users\<User>\Anaconda3\envs\tf2\lib\site-packages\tensorflow\__init__.py", line 41, in <module>
    from tensorflow.python.tools import module_util as _module_util
  File "C:\Users\<User>\Anaconda3\envs\tf2\lib\site-packages\tensorflow\python\__init__.py", line 48, in <module>
    import numpy as np
  File "C:\Users\<User>\Anaconda3\envs\tf2\lib\site-packages\numpy\__init__.py", line 142, in <module>
    from . import core
  File "C:\Users\<User>\Anaconda3\envs\tf2\lib\site-packages\numpy\core\__init__.py", line 50, in <module>
    raise ImportError(msg)
ImportError:

IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!

Importing the numpy C-extensions failed. This error can happen for
many reasons, often due to issues with your setup or how NumPy was
installed.

We have compiled some common reasons and troubleshooting tips at:

    https://numpy.org/devdocs/user/troubleshooting-importerror.html

Please note and check the following:

  * The Python version is: Python3.8 from "C:\Users\<User>\Anaconda3\envs\tf2\python.exe"
  * The NumPy version is: "1.18.5"

and make sure that they are the versions you expect.
Please carefully study the documentation linked above for further help.

Original error was: DLL load failed while importing _multiarray_umath: The specified module could not be found.

settings.json

{
    "python.pythonPath": "C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\python.exe"
}

VsCode sys.path

['c:\\Users\\<User>\\Documents\\Me\\Lab\\Programming\\Python\\Tensorflow\\Tensorflow2', 
 'C:\\Users\\<User>\\Documents\\Me\\Lab\\Programming\\Python\\Tensorflow\\Tensorflow2', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\python38.zip', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\DLLs', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\lib', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\lib\\site-packages', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\lib\\site-packages\\win32', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\lib\\site-packages\\win32\\lib', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\lib\\site-packages\\Pythonwin']

Jupyter Notebook sys.path

['C:\\Users\\<User>\\Documents\\Me\\Lab\\Programming\\Python\\Tensorflow\\Tensorflow2_jupyter', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\python38.zip', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\DLLs', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\lib', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2', '', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\lib\\site-packages', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\lib\\site-packages\\win32', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\lib\\site-packages\\win32\\lib', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\lib\\site-packages\\Pythonwin', 
 'C:\\Users\\<User>\\Anaconda3\\envs\\tf2\\lib\\site-packages\\IPython\\extensions', 
 'C:\\Users\\<User>\\.ipython']

Try launching VS Code from your activated conda environment and then make sure its selected by the Python extension (look in the status bar). That should fix the discrepancy in sys.path .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM