2016-04-27 530 views
1

我試圖使用(並因此安裝)一個名爲mosek的優化軟件包,更具體地說,在python上使用jupyter筆記本。在anaconda中安裝mosek.fusion for python

這是一個商業包,但由於我在學術界工作,我有一個免費的許可證。

感謝Paul的見解,編輯了此問題。

我的目標是能夠通過jupyter在python 3.5中使用mosek。

1°我的問題:

當我運行的代碼在jupyter筆記本下面一行:

import mosek.fusion 

我有以下錯誤:

import mosek.fusion --------------------------------------------------------------------------- 
ImportError        Traceback (most recent call last) 
<ipython-input-9-81543b63d59f> in <module>() 
----> 1 import mosek.fusion 

ImportError: No module named 'mosek.fusion' 

2°我做了什麼:

我第一次下載並安裝了mosek。我還在我的文件夾mosek中添加了我的許可證。 (我完成了這裏描述的所有步驟:http://docs.mosek.com/7.1/toolsinstall/Linux_UNIX_installation_instructions.html並添加了我的學術許可證)。

然後我嘗試運行代碼行: import mosek.fusion這給了一個錯誤。 然後我試圖運行:

import mosek 

然後我沒有錯誤。我的結論是,mosek是(現在,感謝Paul),正確安裝,但融合模塊丟失。

我還在我的mosek文件夾中搜索任何融合文件或文件夾。我沒有找到任何。

有沒有辦法讓這個模塊融合mosek,甚至更好,有沒有辦法讓它工作?

謝謝大家!

E.

回答

1

Fusion尚未提供給Python3。它將在下一個主要版本,即MOSEK 8。

+0

謝謝。你知道它是否可用於Python 2? – probaPerception

+0

是的。請參閱http://docs.mosek.com/7.1/pythonfusion/index.html – AndreaCassioli

2

我相信它安裝到您的.local因爲你與--user標誌安裝。換句話說:

python setup.py install --user 

嘗試運行沒有--user標誌的安裝。應該將它安裝在conda環境中。

但我不確定這是您的進口問題。也許fusion模塊不存在。試試ls-這個文件夾中的內容是/home/edwin/.local/lib/python3.5/site-packages/mosek/。也許試試from mosek import fusion

+1

你說得對,我在沒有--user的情況下再次安裝它,並將它安裝在我的conda環境中。 然後我試着從mosek導入融合中得到你的建議,但是我的錯誤和以前完全一樣。 然後,我嘗試在conda中的mosek文件夾中查找融合文件或文件夾,並且沒有這樣的文件/文件夾... 任何想法如何融合? 我想我會編輯我的問題,使其更具體。 感謝您的幫助,它幫助我鎖定了真正的問題。 – probaPerception

0

安裝MOSEK(從使用Python)的最簡單方法是使用PIP安裝程序:

PIP安裝的git + http://github.com/MOSEK/[email protected]#egg=mosek

您可能還需要明確設置environement變量爲MOSEK LISENCE,例如

os.environ.setdefault(「MOSEKLM_LICENSE_FILE」,license)許可證是服務器地址或文件位置。

但是,Mosek Fusion尚未提供給Python 3

+0

謝謝,但我找到了一種使用Mosek並與Python融合的方法。我需要使用Python 2而不是Python 3. – probaPerception

+0

通過pip安裝並不關心你是使用Python 2還是Python 3.這只是一個工具,使安裝更簡單和自動化(也許你有一個測試服務器等)。 – tschm

0

保留在MOSEK網站上。即將發佈的版本8(測試版)將支持Python 3.5。同時全面的Anaconda支持也將很快推出。