[英]python: can improt package from command line but not from jupyter notebook
[英]Package found in Jupyter Notebook but not command line
我在命令行中創建了一個新的 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.