Introduction
Python 是一種物件導向的程式語言,在 Python 中函式也是物件,大小寫不同視為不同物件。
強型別的動態程式語言,不需要明確地宣告資料型別,但資料型別仍是必要的。
Jupyter Notebook
Jupyter 又稱 IPython,是一個簡易的網頁模式開發環境。
CNTK 安裝過程已預先將 Jupyter 安裝於 Anaconda 環境中。
我們先啟動先前安裝的 Anaconda 環境
cntk\Scripts\cntkpy35.bat
此時指令視窗當前指標,指向 Anaconda 環境,應為 C:\local\Anaconda3-4.1.1-Windows-x86_64\envs\cntk-py35。
此時先將路經切換到 CNTK 提供的教學資源資料夾,稍後我們在此路徑啟動 Jupyter,即可瀏覽這些教學資源。
cd cntk\Tutorials
鍵入以下指令即會啟動 Jupyter Notebook 網頁開發環境,此時會啟動您的預設瀏覽器。
Jupyter Notebook
ipynb 為 Jupyter 使用的副檔名,點選後即可瀏覽該教學資源。
此處我們可以點選教學資源 CNTK_101_LogisticRegression
Python
語法
結束符號:沒有結束符號。
程式區塊:替代常見的 {} 括弧,替代的是嚴格的縮排,相同縮排為同一個程式區塊。
特殊指令:Python 的指令如 function 的宣告起始,是以 指令: 的格式撰寫,例如以下範例。
def func():
try:
...
catch:
...
finally:
...
註解符號:# 符號
資料型別
lists:串列,類似一維陣列,list 中可以多層包含其他的 lists。
tuples:元組,不可變的一維陣列,其他特性與 lists 類似。
dctionaries:字典,key 和 value 組成的陣列。
字串
多行字串:使用三個雙引號(""")或是三個單引號(''')包夾。
Unicode:支援 unicode。
控制流程
for:
for number in lists:
if:
if lists[0] == 0:
...
elseif lists[0] == 1:
...
else lists[0] == 2:
...
while:
while lists[0] == 0:
...
函數
使用關鍵字 def 宣告。
def FuncName(x):
...
return lists
類別
習慣上,私有變數或方法命名會使用兩個底線(__)作為起始。
class ClassName:
variable = 0
def _init__(self):
self.variable = 1
def FuncName(self, arg):
return self.variable
例外
使用 try-except 以及 exception_name。
def FuncName():
try:
1/0
except ZeroDivisionError:
...
else:
...
finally: