❶ 如何安裝python 3中,並設置本地編程環境在CentOS 7
介紹
Python是一種多功能編程語言,可以用於許多不同的編程項目。開發團隊於1991年首先發表了一個名叫靈感來源於英國喜劇組織Monty Python的名字,他希望Python能夠成為一種有趣的語言。對於初學者和經驗豐富的開發人員來說,Python易於設置,並且以相對直接的方式編寫,並提供對錯誤的即時反饋。Python 3是該語言的最新版本,被認為是Python的未來。
本教程將指導您在本地CentOS 7機器上安裝Python 3,並通過命令行設置編程環境。
先決條件
您將需要一台連接到互聯網的非root超級用戶帳戶的CentOS 7計算機。
第1步 - 准備系統
我們將通過命令行來完成這個安裝。如果您的CentOS 7計算機啟動了圖形用戶界面(GUI)桌面,則可以通過菜單訪問命令行界面,方法是導航到應用程序,然後導航到實用程序,然後單擊終端。如果您需要更多關於終端的指導,請務必閱讀文章「linux終端簡介」。
在開始安裝之前,讓我們確保更新默認的系統應用程序以獲得最新版本。
我們將使用開源包管理工具yum,代表Yellowdog Updater Modified。這是一個常用的工具,用於在基於Red Hat的Linux系統(如CentOS)上處理軟體包。它可以讓你輕松地安裝和更新,以及刪除您的計算機上的軟體包。
我們首先通過運行這個命令來確保yum是最新的:(更新系統是可選執行)
sudo yum -y update
該-y標志用於警告系統,我們知道我們正在進行更改,防止終端提示我們確認。
接下來,我們將安裝yum-utils,這是一個擴展和補充yum的實用程序和插件的集合:(也可以不安裝)
sudo yum -y install yum-utils
最後,我們將安裝CentOS開發工具,這些工具用於允許您從源代碼構建和編譯軟體:(也可以不安裝)
sudo yum -y groupinstall development
一旦安裝好了,我們的安裝就緒了,我們可以繼續安裝Python 3。
第2步 - 安裝和設置Python 3
CentOS源自RHEL(紅帽企業Linux),其穩定性是其主要焦點。正因為如此,經過測試和穩定版本的應用程序是最常見的系統和可下載的軟體包,所以在CentOS上,你只能找到Python 2。
因為我們想要安裝Python 3的最新上游穩定版本,我們需要安裝IUS,代表Inline with Upstream Stable。作為一個社區項目,IUS為選擇軟體的一些更新版本提供了紅帽軟體包管理器(RPM)軟體包。
要安裝IUS,先要安裝epel-release7包 我們來安裝它yum:
sudo yum -y install epel-release-7-11.noarch.rpm
sudo yum -y install ius-release.rpm
一旦IUS完成安裝,我們可以安裝最新版本的Python:
sudo yum -y install python36u
當Python的安裝過程完成後,我們可以通過以下python3.6命令檢查其安裝是否成功:
python3.6 -V
使用成功安裝的Python 3.6版本,我們將收到以下輸出:
Output
接下來我們將安裝pip,它將管理Python的軟體包:
sudo yum -y install python36u-pip
一個用於Python的工具,我們將使用pip來安裝和管理我們可能想在我們的開發項目中使用的編程包。你可以通過鍵入以下命令來安裝Python包
sudo pip3.6 install package_name
在這里,package_name可以參考任何Python包或者庫,比如用於Web開發的Django或者用於科學計算的NumPy。所以如果你想安裝NumPy,你可以使用命令來完成pip3.6 install numpy。
最後,我們將需要安裝IUS軟體包python36u-devel,它為我們提供了Python 3開發所需的庫和頭文件:
sudo yum -y install python36u-devel
該VENV模塊將用於建立一個虛擬的環境,為我們下一步的發展項目。
第3步 - 建立一個虛擬環境
現在,我們已經安裝了Python,並且已經安裝好了系統,我們可以繼續使用venv創建我們的編程環境。
虛擬環境使您能夠在計算機上為Python項目設置一個獨立的空間,確保您的每個項目都擁有自己的一組依賴項,不會中斷任何其他項目。
建立一個編程環境使我們能夠更好地控制我們的Python項目以及如何處理不同版本的包。使用第三方軟體包時,這一點尤為重要。
您可以根據需要設置盡可能多的Python編程環境。每個環境基本上都是您的計算機中的一個目錄或文件夾,其中包含一些腳本以使其充當環境。
選擇你想把你的Python編程環境放入哪個目錄,或者創建一個新目錄mkdir,如下所示:
mkdir environments
cd environments
一旦進入了你想要環境所在的目錄,就可以通過運行以下命令來創建一個環境:
python3.6 -m venv my_env
本質上,這個命令會創建一個新的目錄(在本例中稱為my_env),其中包含一些我們可以通過ls命令看到的項目:
這些文件一起工作,以確保您的項目與本地計算機的更廣泛的上下文隔離,以便系統文件和項目文件不會混合。這是版本控制的好習慣,並確保您的每個項目都可以訪問它所需的特定軟體包。
要使用這個環境,你需要激活它,你可以通過輸入以下命令來調用目錄中的激活腳本bin:
source my_env/bin/activate
您的提示現在將以您的環境的名稱作為前綴,在這種情況下,它被稱為my_env:
這個前綴讓我們知道my_env環境當前是活動的,這意味著當我們在這里創建程序時,他們將只使用這個特定環境的設置和包。
注意:在虛擬環境中,您可以使用命令python而不是python3.6,而pip不是pip3.6如果您願意的話。如果您在環境外使用Python 3,則需要專門使用python3.6和pip3.6命令。
遵循這些步驟之後,即可使用您的虛擬環境。
第4步 - 創建一個簡單的程序
現在我們已經建立了虛擬環境,我們來創建一個簡單的「Hello,World!」程序。這將確保我們的環境正在工作,並且使我們有機會更熟悉Python,如果我們還沒有。
為此,我們將打開一個名為vim的命令行文本編輯器,並創建一個新文件:
vi hello.py
一旦文本文件在我們的終端窗口打開,我們將不得不鍵入i進入插入模式,然後我們可以寫我們的第一個程序:
現在按下ESC退出插入模式。接下來,輸入:x然後ENTER保存並退出文件。
我們現在准備好運行我們的程序:
python hello.py
剛剛創建的hello.py程序應該使終端產生以下輸出:
Output
要離開環境,只需鍵入命令,deactivate然後返回到原始目錄。
結論
恭喜!此時,您已經在本地CentOS 7機器上安裝了Python 3編程環境,並且可以開始一個編碼項目!
❷ python3.5如何使用最新版本的anaconda
在安裝罩如塌Anaconda之前,有的已經安裝過一個Python版本了,但是又不想刪除這個Python版本,該怎麼辦呢?
概括:輕松兩步--在系統環境變數中找到對應之前安裝Python的路徑並刪除;直接將你原來安裝python的整個文件夾拷貝到envs的目錄下,激活該版本python的名稱就是文件夾名。
我的電腦裡面本來安裝了Python2.7的版本,並且配置好了Django,用來做網頁設計。後來我又需要一個Python3.5的版本使用tensorflow,Anaconda適用於管理多Python環境,下面來說一說如何在已有Python2,7的條件下安裝Anaconda。
其實不管是Python還是Anaconda 都類似於包的管理,可以看到不管是安裝Python還是Anaconda,都是在安裝目錄新建了一個文件下添加了很多文件,然後把安裝目錄路徑添加到環境變數當中(windows下)。
理解這個原理之後,其實要做的就是修改環境變數,和移動Python安裝的文件夾而已。具體的操作如下。
下載anaconda的安裝包
這里推薦使用清華的鏡像,因為速度快而且物圓可以安裝你想要的版本,在官網裡面往往給出的最新版本,就像我安裝的時候官網給的是帶Python3.6的版本,但是我想直接安裝帶python3.5的版本的Anoconda.
可以直接在清華的鏡像Index of /anaconda/archive/中,找到對應的版本,下載並安裝。帶Python3,5的window版本就是下載Anaconda3-4.2.0-Windows-x86_64。
2.安裝注意事項:安裝目錄最好不要有空格;是否把Anaconda加入環境變數的選項上打勾,這涉及到能否直接在cmd中使用conda、jupyter、ipython等命令,推薦打勾,如果不打勾可以再安裝以後將對應的環境變數添加上去,例如我的就是 D:Anaconda3;D:Anaconda3Scripts;D:Anaconda3Libraryin
3.安裝好了以後,可以在cmd中輸入 Python,發現顯示的還是你之前安裝的版本,像我的就是Python2.7,這是因為你之前安裝Python2,7的時候,是將它的安裝目錄添加到了環境變數中的。在系統環境變數中找到對應之前安裝Python的路徑並刪除,像我的就是D:Program Filespython2.7 和D:Program Filespython2.7Scripts。將其刪除。
接著重啟電腦,再在cmd中輸入python 就會顯示是Anaconda自帶的版本了。
4. 將原來python加入Anoconda中
在Anoconda中,用戶以後安裝的python會存放在envs中。如果在cmd中輸入conda info -e 或者 conda info --envs 就可以得到你安裝的python信息。 在考察一下conda中安裝其他包的命令:
其實就是在envs中創建了一個python34的文件夾,這個也就是安裝python34的一個安裝目錄。了解這個原理之後,就可以輕松將原橡森來的環境轉到Aconda進行管理。
直接將你原來安裝python的整個文件夾拷貝到envs的目錄下。
然後你再用conda info -e 命令,就會發現多了一個你添加的文件夾的名字的python,我把自己之前安裝的python2.7的包拷過去。還可以給文件下重命名一下,我命名的是python27。
5.環境管理
6.設置國內鏡像命令
然後你的.condarc 文件應該是這樣的內容,或者你可以直接修改該文件的內容設置鏡像。
channels:
- tuna.tsinghua.e.cn/anaconda/pkgs/free/
- defaults
show_channel_urls: yes
❸ python environments建多了怎麼刪除
可以直接在Emacs中打開Shell然後運行Python,也可以安裝ipython模式的插件,後者好一點,好前順便灶畝增強友辯清了原來的python模式的功能。
❹ 想把VS2013的python從3.4版本換成2.7版本,怎麼弄
解譽賀決方案管理器中,神仔每個項目游虛汪下面有有python的環境,右擊python environments然後view all python environments,然後把python2.7 設置為default.
❺ 如何使用Python互動式控制台
進入互動控制台
可以從任何安裝了Python的本地計算機或伺服器訪問Python互動式控制台。
您通常希望使用的命令輸入Python的默認版本的Python互動式控制台:
python
如果您設置了編程環境 ,則可以啟動環境並訪問在該環境中安裝的Python和模塊版本,方法是首先進入該環境:
cd environments. my_env/bin/activate
然後鍵入python命令:
python
在這種情況下,Python的默認版本是Python 3.5.2,一旦我們輸入命令,它將顯示在輸出中,以及相關版權聲明和一些您可以輸入額外信息的命令:
OutputPython 3.5.2 (default, Nov 17 2016, 17:05:23) [GCC 5.4.0 20160609] on linuxType "help", "right", "credits" or "license" for more information.>>>
下一個命令的主要提示是三個大於符號( >>> ):
您可以通過將版本號附加到命令來定位特定版本的Python,而不需要空格:
python2.7
OutputPython 2.7.12 (default, Nov 19 2016, 06:48:10) [GCC 5.4.0 20160609] on linux2Type "help", "right", "credits" or "license" for more information.>>>
在這里,我們收到了使用Python 2.7.12的輸出。 如果這是我們的默認版本的Python 2,我們也可以使用命令python2輸入到這個互動式控制台。
或者,我們可以使用以下命令調用默認的Python 3版本:
python3
OutputPython 3.5.2 (default, Nov 17 2016, 17:05:23) [GCC 5.4.0 20160609] on linuxType "help", "right", "credits" or "license" for more information.>>>
我們也可以使用python3.5命令調用上述互動式控制台。
隨著Python互動式控制台的運行,我們可以繼續使用Python的shell環境。
使用Python交互控制台
Python互動式解釋器接受Python語法,您將遵循>>>前綴。
例如,我們可以為變數分配值:
birth_year = 1868
一旦我們將整數值1868分配給變數birth_year ,我們將按返回並接收一個新行,其中三個大於標號作為前綴:
birth_year = 1868
我們可以繼續分配變數,然後用運算符進行數學運算 ,得到計算結果:
>>> birth_year = 1868>>> death_year = 1921>>> age_at_death = death_year - birth_year>>> print(age_at_death)53>>>
正如我們在文件中使用腳本一樣,我們分配了變數,從另一個中減去一個變數,並要求控制台列印表示差異的變數。
就像任何形式的Python一樣,您也可以使用互動式控制台作為計算器:
>>> 203 / 2010.15>>>
在這里,我們將整數203除以20 ,並返回了10.15的商。
多行
當我們編寫Python代碼時,將覆蓋多行,解釋器將使用輔助提示符連續行,三個點( ... )。
要突破這些連續線,您需要按兩次ENTER 。
我們可以在下面的代碼中看到這樣的代碼,它分配兩個變數,然後使用條件語句來確定列印到控制台的內容:
>>> sammy = 'Sammy'>>> shark = 'Shark'>>> if len(sammy) > len(shark):... print('Sammy codes in java.')... else:... print('Sammy codes in Python.')... Sammy codes in Python.>>>
在這種情況下,兩個字元串的長度相等,所以else語句列印。
請注意,您將需要保留Python縮小四個空格的約定,否則您將收到錯誤:
>>> if len(sammy) > len(shark):... print('Sammy codes in Java.')
File "<stdin>", line 2
print('Sammy codes in Java.')
^IndentationError: expected an indented block>>>
❻ python 部署可以用虛擬環境嗎
Python部署虛擬環境的利器——Virtualenv
virtualenv is a tool to create isolated Python environments.
virtualenv 是創建獨立Python開發環境的工具,用於解決同一台機器上不同的Python工程的依賴、版本以及間接許可權等問題。比如項目foo1依賴Django1.3,而項目foo2依賴Django1.7,而當前全局開發環境為Django1.8,版本的不同會導致項目所需包的版本不兼容等問題,使項目無法正常運行,使用virtualenv來創建相對獨立的虛擬環境,可以很好的解決此類問題。此外,值得一提的是,對於項目打包遷移,如部署Web應用項目等應用場景,virtualenv都很有用武之地。
virtualenv創建一個擁有自己安裝目錄的環境, 這個環境不與其他虛擬環境共享庫, 能夠方便的管理python版本和管理python庫。
下面介紹一下與使用Virtualenv相關的技巧。
1.安裝Virtualenv
$ pip install virtualenv
//或者由於許可權問題使用sudo臨時提升許可權
$ sudo pip install virtualenv
2.virtualenv創建虛擬環境
1 virtualenv ENV
2 #創建一個名為ENV的目錄,並安裝了ENV/bin/python
3 #創建了lib,include,bin目錄,安裝了pip
lib目錄 : 所有安裝的python庫都會放在這個目錄中的lib/pythonX.X/site-packages/中 ;
bin目錄 : bin/python是當前虛擬環境使用的python解析器 ;
如果在命令行中運行virtualenv --system-site-packages ENV, 會繼承/usr/lib/python3.6/site-packages下的所有庫, 最新版本virtualenv把把訪問全局site-packages作為默認行為
default behavior.
3.激活virtualenv
1 #ENV目錄下使用如下命令
2 source ./bin/activate #激活當前virtualenv
3 #當用戶名前面出現小括弧括起來的虛擬環境名時,表明虛擬環境被成功激活
使用「pip list」指令可查看當前庫
4.關閉virtualenv
deactivate
5.指定python版本
可使用-p PYTHON_EXE選項在創建虛擬環境的時候指定Python版本
1 #創建python2.7虛擬環境
2 virtualenv -p /usr/bin/python2.7 ENV2.7
3
4 #創建python3.4虛擬環境
5 virtualenv -p /usr/local/bin/python3.4 ENV3.4
這樣可以解決不同項目python版本沖突以及和python庫版本不兼容等問題。
6.生成可打包環境
某些特殊需求下,可能沒有網路,我們希望直接打包一個ENV,解壓後直接使用,這時候可以使用virtualenv --relocatable指令將ENV修改為可更改位置的ENV
#對當前已經創建的虛擬環境更改為可遷移
virtualenv --relocatable ./
7.獲得幫助
virtualenv -h
❼ 如何創建部署WSGI類型的Python應用
第一部分:安裝必要工具。
1.因為這是部署Python開發環境,所以安裝pip可以簡化一些軟體的安裝過程。(PIP對應Lua的luarocks)
sudo apt-get install python-pip
安裝三個Python框架
sudo pip install flask
sudo pip install django==1.5.1
sudo pip install tornado==3.1.1
2.安裝Gunicorn,這是運行Python的WSGI HTTP服務。
sudo pip install gunicorn
3.Virtualenv, 安裝這個是因為,在部署Django的時候,使用了不同的版本。
sudo pip install virtualenv
第二部分衫液:創建部署應用。
1.創建一個WSGI類型的Tornado應用。
import tornado.web
import tornado.wsgi
class MainHandler(tornado.web.RequestHandler):
def get(self):
self.write("My source code in the MoPaas server by python Tornado!")
settings = {
"debug" : True,
"static_path": "static",
}
#####
urls = [
(r"/", MainHandler),
]
app = tornado.wsgi.WSGIApplication(urls, **settings)
啟動這個服務:
gunicorn -w 4 torapp:app -b 0.0.0.0:8888
2.創建一個Flask應用。
from flask import Flask
app = Flask(__name__)
@app.route("/")
def hello():
return "My source code in the MoPaas server by python Tornado!"
if __name__ == "__main__":
app.run()
啟動這個服務:
gunicorn -w 4 server:app -b 0.0.0.0:8888
3.創建Django應用。
Django是一個比較大的WEB應用,創建各部署的過程,稍微復雜一些。
創建工程
django-admin.py startproject hotdoc
創建應用
python manage.py startapp verp
創建資料庫表
python manage.py syncdb
啟動工程
gunicorn hotdoc.wsgi:application -b 0.0.0.0:8888
需要在修改工程目錄下的settings.py
在INSTALLED_APPS中加入, verup和gunicorn:
INSTALLED_APPS = (
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'verup',
'gunicorn'
)
以上,本地開發環境是沒問題的。
這些步驟也可以用virtualenv新創建一個或鉛物虛擬環境完成,本地創建virtualenv可以
目前在WEB IDE上沒有測試通過,理論上說,如果coding的WEB IDE是基於Docker
的,virtualevn也應激空該好用。
mkdir ~/environments/
virtualenv ~/environments/tutorial/
cd ~/environments/tutorial/bin
source bin/activate
目前的Paas平台上的Python服務就是WSGI形式的應用,比如SAE和Mopaas,
不同的是,在SAE上有些現成的例子。Mopaas需要自己從頭寫,這三個例子
在Mopaas生產環境下都運行測試通過。在coding.net的WEB IDE也可成功運
行。
❽ 如何管理python項目
Virtual Environments
首先Python似乎沒有類似Maven/Ant這樣的項目管理工具。那麼當一台機器上有多個python項目,且這些python項目各自有不同的依賴,不想互相干擾時怎麼辦呢?
官方做法是使用Virtual Environments將每個項目互相隔離開。一般情況下,我們使用python解釋器運行python腳本或mole:
>python myScript.py
運行的目錄就是安裝的python解釋器,即python.exe所在的目錄。而Virtual Environments就是給每個項目都生成一個項目獨有的目錄,這個目錄里包含python解釋器,python標准類庫和其他各式各樣的必要文件。這樣每個項目就可以使用不同的解釋器和類庫,且互不幹擾。
創建過程也很簡單。首先找到pyvenv.py所在的目錄,這個文件通常在安裝目錄的自目錄\Tools\scripts下。這是一個生成Virtual Environments的工具。然後運行:
>pyvenv tutorial-env
運行後就會生成一個名為「tutorial-env」的目錄。找到這個目錄,可以發現正如官網所說,這個目錄包含運行python項目所必須的一切文件。使用在各自Virtual Environments目錄里包含的解釋器來運行特定的python項目就可以了。同時,對於那些每個項目使用的特定的依賴(packages或mole),則加入到各自Virtual Environments目錄的類庫子目錄中就可以了。這里需要注意的是。創建完Virtual Environments後,還需要激活。做法很簡單,在上例tutorial-env目錄下執行下的命令即可:
>tutorial-env/Scripts/activate
PIP
PIP是官方提供的安裝python第三方類庫(packages/mole)的工具。它可以去PPI(python packages index)查找或下載第三方類庫。網址是:https://pypi.python.org/pypi
找到上例Virtual Environments目錄下的pip.exe並運行:
>pip install lib_name
即可安裝,其他功能請自行查看手冊。如果是在python的安裝目錄下運行pip,則類庫可以被非Virtual Environments的所有項目使用。PIP安裝的其實是package。
Requirements.txt
在Virtual Environments目錄下運行:
>pip freeze > requirements.txt
可以生產一個當前項目所有依賴類庫及其版本的list文件,文件名就是requirements.txt(當然也可以用別的名字)。文件內容大致如下:
novas==3.1.1.3
numpy==1.9.2
requests==2.7.0
使用requirements.txt的好處就是:
The requirements.txt can then be committed to version control and shipped as part of an application. Users can then install all the necessary packages with 「install -r「:
>pip install -r requirements.txt
這樣就可以方便的管理項目依賴了。如果不使用requirements.txt,直接使用version control存儲Virtual Environments目錄,其他程序員直接下載該目錄就可以開始項目開發的做法也可以。
❾ python代碼用什麼寫
對於新手而言,學了大概的語法,七七八八的歷史、概念、知識,然而最直接的一個問題卻無人解答:到底要用什麼軟體、什麼環境來寫python?比如.m文件可以用matlab寫,java可以用Eclipse寫,C語言可以用VC等軟體寫。那麼Python用什麼寫呢?
和C語言一樣,當然你可以直接在電腦上開個黑框寫,也可像html一樣用記事本寫,但是沒有可視化、便利化的編譯軟體,顯然不符合當代程序員的個性嘛。所以這里推薦下比較流行的一款:Anaconda。
最早也是其他童鞋推薦的,後來看書,例如《Deep Learning With Python》裡面,指定用的編譯軟體就是Anaconda。
推薦學習《python教程》
Anaconda有許多優勢:
Anaconda Navigator is a desktop graphical user interface (GUI) included in Anaconda? distribution that allows you to launch applications and easily manage conda packages, environments and channels without using command-line commands. Navigator can search for packages on Anaconda Cloud or in a local Anaconda Repository. It is available for Windows, macOS and Linux.
下載鏈接:https://www.anaconda.com/download/#macos
打開後界面:(我是用macOS系統的)
然後你Launch那個Spyder就可以寫python啦!
就是這么簡單,然後就可以在這里寫啦。
當然,作為新時代的碼農,代碼主要是靠啦,進來跑就好了嘛。
之後要跑什麼高級點的程序,再自己慢慢探索吧!
開始在python的海洋里遨遊吧!!!~
❿ 怎麼在mac 系統上使用Python怎麼安裝Anaconda
1. 首先安裝python,我選擇安裝Anaconda (Windows 64-Bit Python 2.7 Graphical Installer 下載地址)。
Anaconda的一些命令(在Anaconda的命令行窗口輸入):
conda list #該命令,將列出Anaconda安裝的所有應用包,我們可以看到Anaconda已經安裝了numpy, nose, pip, python, scipy, mingw等等。
conda install <pkg name> #該命令用於安裝應用包,如 conda install numpy.
pip install <pkg name> #該命令用於安裝應用包,如 pip install theano.
conda update <pkg name> #升級應用包,如 conda update python
2. 安裝Theano,在Anaconda 的命令窗口中輸入 pip install theano,可以看到程序開始下載安裝包,並檢查是否滿足安裝條件:numpy>=1.5.0,scipy>=0.7.2,滿足條件之後開始運行setup.py安裝theano,安裝完成後會顯示Successfully installed theano。
3. 測試Theano安裝情況。
(1)在ipython中輸入以下兩行代碼:
import theano
theano.test()
會顯示theano的版本號,安裝位置,已經其他包的安裝版本,如numpy,nose,python等。
在運行中出現g++不是內部或外部命令,也不是可運行的程序或批處理文件。
(2)在Anaconda的命令行窗口輸入:python Lib\site-packages\theano\tests\run_tests_in_batch.py
顯示unable to find theano-nose,查看run_tests_in_batch.py發現,其中路徑設置為在bin下尋找theano-nose文件,而實際上Anaconda文件夾下根本沒有bin這個文件夾,theano-nose存放在Scripts文件夾中。
》》》嘗試1:將Scripts更名為bin,重新運行這句命令,可以成功運行。但是出現一個warning,提示沒有檢測到g++,所以無法運行優化後的C代碼版本,只能執行python版本。
該種嘗試的結果是,下次打開Anaconda 命令窗口後出現錯誤,因為其運行路徑為Scripts,所以還是不要修改了。
(3)g++問題。我們打開MinGW文件夾,可以很清楚的看到有g++,但是為什麼使用不了呢??在Anaconda 命令窗口中輸入g++也能成功調用g++.exe啊。所以結論是,鑒於這個代碼中出現很明顯的漏洞,所以說不定這里也是錯誤,先不管這些了。
試著做了以下配置,也不知行不行。
添加環境變數: path: C:\Anaconda\MinGW\bin;C:\Anaconda\MinGW\x86_64-w64-mingw32\lib;
新建環境變數: PYTHONPATH: C:\Anaconda\Lib\site-packages\theano;
在home目錄下(cmd可以看到,我的是C:\Users\Administrator),創建 .theanorc.txt 文件內容如下:
[global]
openmp=False
[blas]
ldflags=
[gcc]
cxxflags = -IC:\MinGW\include
(4)驗證BLAS是否安裝成功。由於numpy是依賴BLAS的,如果BLAS沒有安裝成功,雖然numpy亦可以安裝,但是無法使用BLAS的加速。驗證numpy是否真的成功依賴BLAS編譯,用以下代碼試驗:
>>> import numpy
>>> id(numpy.dot) == id(numpy.core.multiarray.dot)
False
結果為False表示成功依賴了BLAS加速,如果是Ture則表示用的是python自己的實現並沒有加速。