2016-11-14 138 views
2

我使用Azure上的一个数据科学虚拟机已安装的蟒蛇蟒蛇Azure的存储。的Python蟒蛇和模块

我需要使用访问模块Azure存储BLOB:

from azure.storage.blob import BlockBlobService 

当与此命令处理我收到模块azure.blob.storage没有找到消息。我已经迫使更新模块azure-storage

pip install azure-storage --upgrade 

缺少的模块,而不是存在于使用已安装的模块:

pip freeze 

去除蟒蛇,并使用标准的Python发行一切正常后。

我怎样才能继续使用蟒蛇与azurestorage支持?有没有人试验过这个问题并解决了它?

+0

您需要确保使用与Anaconda安装相关的pip版本。 '哪个点子的输出是什么? – darthbith

回答

0

Python目前有在Azure虚拟机的数据科学,其中包括系统级&蟒蛇二级安装。

正如@darthbith所说,它显示路径/usr/local/bin/pip当您运行命令which pip,这是属于系统级别。

您需要移动到Anaconda的路径bin并使用./pip命令安装当前Anaconda所需的模块,如下所示使用jupyter终端。

# For example, using anaconda for Python 2 
[email protected]:~$ cd anaconda2_20/bin 
# Using the Anaconda pip to install modules 
[email protected]:~/anaconda2_20/bin$ ./pip install azure-storage --upgrade 
# Then see the content below 
Collecting azure-storage                             
    Downloading azure_storage-0.33.0-py2-none-any.whl (182kB)                    
    100% |################################| 184kB 2.9MB/s                     
Collecting requests (from azure-storage)                         
    Downloading requests-2.12.1-py2.py3-none-any.whl (574kB)                     
    100% |################################| 583kB 1.7MB/s                     
Requirement already up-to-date: azure-nspkg in /home/nbcommon/anaconda2_20/lib/python2.7/site-packages (from azure-storage)    
Requirement already up-to-date: azure-common in /home/nbcommon/anaconda2_20/lib/python2.7/site-packages (from azure-storage)    
Requirement already up-to-date: futures in /home/nbcommon/anaconda2_20/lib/python2.7/site-packages (from azure-storage)     
Collecting cryptography (from azure-storage)                        
    Downloading cryptography-1.5.3.tar.gz (400kB) 
..... 

然后azure-storgae模块进行升级当前阿纳康达。

希望它有帮助。

2

数据科学虚拟机的Linux版本包括两个蟒蛇环境:根,与Python 2.7和py35,与Python 3.5。您应该激活您想要的:

source activate py35 

PIP蟒蛇然后将它们指的是相同的环境。

您可能需要以root身份运行pip以安装软件包。你可以用

sudo /anaconda/bin/pip 

根环境,或

sudo /anaconda/envs/py35/bin/pip 

为py35环境做。