簡體   English   中英

Package 在 Jupyter Notebook 中找到但不是命令行

[英]Package found in Jupyter Notebook but not command line

眼鏡

  • Ubuntu 18.x
  • 康達 4.8.3

我在命令行中創建了一個新的 conda 環境。 在安裝了一些包之后,我在 jupyterlabs 中運行了一個 kernel,使用這些包沒有問題。 我后來寫了一個 .py 程序,但它給出了錯誤,說我沒有安裝軟件包。 這是重現錯誤的最小示例:

conda create -n new_env pip ipykernel python=3.7
conda activate new_env
whereis pip

/opt/conda/envs/new_env/pip

/opt/conda/envs/new_env/pip install pandas pandas
ipython kernel install --user --name=new_env

在 jupyterlab 筆記本(使用 new_env 環境)中, import pandas as pd完美運行。 在命令行內部,這會產生一個錯誤:

conda activate new_env
python
>>>import pandas

Traceback(最近一次調用最后一次):ModuleNotFoundError 中的文件“”,第 1 行:沒有名為“pandas”的模塊

罪魁禍首?

在 jupyter notebook 內部(使用 new_env 環境), sys.path

['/rapids/notebooks/my_code/TF_Models/DAE',
 '/opt/conda/envs/new_env/lib/python37.zip',
 '/opt/conda/envs/new_env/lib/python3.7',
 '/opt/conda/envs/new_env/lib/python3.7/lib-dynload',
 '',
 '/opt/conda/envs/new_env/lib/python3.7/site-packages',
 '/opt/conda/envs/new_env/lib/python3.7/site-packages/IPython/extensions',
 '/root/.ipython']

在命令行內(激活了new_env ), sys.path是:

['', 
'/opt/conda/lib/python38.zip', 
'/opt/conda/lib/python3.8', 
'/opt/conda/lib/python3.8/lib-dynload', 
'/opt/conda/lib/python3.8/site-packages']

如果不是實際問題,這顯然與問題有關。 jupyterlab 指向正確的路徑,但 conda 環境中的 python 不是。 這給了我兩個問題:

1.如何在new_env環境指向正確路徑的情況下獲取命令行python?

2、如何在new_env環境下獲取命令行python來運行安裝的包?

conda create -n new_env pip ipykernel python=3.7

嘗試... conda create -n new_env pip ipykernel python==3.7

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM