隨著Python的進一步發(fā)展,越來越多的現成的Python的機器學習的算法已經發(fā)布出來。為了可以更好地運用這些機器學習的算法,我們有必要對Python有個初步的了解。以下是小編為你整理的python機器學習入門教程 ?
Python不同層級的語句之間間隔四個空格縮進, indentation。Python有比較嚴格的語法結構,需要不同層級的代碼之間相差四個空格,不然就不能編譯通過。 ?
Python中輸出到console是用print,然后接收鍵盤輸入是用raw_input(),示例name = raw_input(What's your name?);
?
寫完程序之后,要用不同的輸入來測試寫的程序是否正確。 ?
變量Variables,用于存儲后續(xù)可能用到的數據 ?
數據類型Data Type,包含數值和布爾值 ?
注釋,當行注釋用#,多行注釋"""開始"""結束,如下圖所示 ?
基本數學運算符,+,-,*,/ ?
指數運算符,** ?
取余運算符,% ?
如何選擇版本
Python 2.x 和 3.x 通常已經內置在現代 Linux 發(fā)行版中,你可以立刻使用它。你可以終端模擬器中輸入 "python" 或 "python3"來進入 Python shell, 并輸入 "quit()" 退出。 ?
如果你希望在鍵入 "python" 時使用 Python 3.x 而不是 2.x,你可以像下面一樣更改對應的符號鏈接: ?
順便一提,有一點需要注意:盡管 Python 2.x 仍舊被使用,但它并不會被積極維護。因此,你可能要考慮像上面指示的那樣來切換到 3.x。2.x 和 3.x 的語法有一些不同,我們會在這個系列文章中使用后者。 ?
另一個在 Linux 中使用 Python 的方法是通過 IDLE (Python 集成開發(fā)環(huán)境),這是一個為編寫 Python 代碼而生的圖形用戶界面。在安裝它之前,你*查看一下適用于你的 Linux 發(fā)行版的 IDLE 可用版本。 ?
然后,你可以像下面一樣安裝它: ?
$ sudo aptitude install idle-python3.2 ?
安裝成功后,你會看到 IDLE 的運行畫面。它很像 Python shell,但是你可以用它做更多 Python shell 做不了的事。 ?
集合的與操作
我們可以看到集合輸出的效果會有一個set表示。 ?
aaa = [1,2,3]bbb = [3,4,5,6]a_a = set(aaa)b_b = set(bbb) ?
集合中并集的表示: ?
k = a_a | b_b ?
print k
?
使用一個| 線表示 ,求出2個數的并集。 ?
vip = a_a.union(b_b) #并集print vip ?
集合中交集的表示 使用 ^ 表示求交集 ?
k = a_a ^ b_b #交集合 ?
print (a_a.intersection(b_b)) # 求交!!!! ?
集合中求出不同項目的結果 ?
print (a_a.difference(b_b)) ?
需要單獨說明的是求的是自己的和他人的不同,不是兩者一起的不同 ?
python有什么特點
下載安裝:從python官網下載開發(fā)和運行環(huán)境程序。本例下載python-3.3.3.amd64的安裝包,并安裝。 ?
開發(fā)工具:window系統(tǒng)中,python有多種開發(fā)工具,比如,一、直接在cmd命令窗口執(zhí)行,但此種僅能單條語句執(zhí)行,不能運行完整的程序。二、python自帶的集成開發(fā)環(huán)境,可通過開始——所有程序——python3.3——IDLE(Python GUI)啟動。三、其他集成開發(fā)環(huán)境,如PythonWin等,有編輯和調試能力,還實現了MFC類庫存的包裝。 ?
本例中,使用python自帶的開發(fā)環(huán)境。File—New File,新建py文檔,編寫程序,保存。Run——Run module,可得到運行結果。 ?
封裝性:可以把屬性、方法結合在一起,不可以直接訪問對象的屬性,僅能通過接口與對象發(fā)生聯(lián)系。以下把方法和屬性封裝成了一個類。 ?
構造器:python有3種類型的構造器,且一個類中僅可以定義一個構造器,若多個,則以*為準。1.若不聲明,則默認為一個沒有任何操作的特殊的__init__方法,__init__(self),此時可通過obj = my_class()聲明實例。 2.自聲明__init__構造器,會覆蓋默認的,且可以更新類的數據屬性。3.構造器方法__new__(),用于不可變內置類型派生,不能通過實例訪問屬性,僅能通過類訪問。 ?
繼承性:python支持多繼承,且子類繼承了父類的方法和屬性。若子類中有和父類相同名稱的方法,則子類會覆蓋(Override)父類方法。父類方法依舊可以訪問。 ?
數據結構:有豐富的數據結構,例如列表、字典、集合等。本例簡單介紹字典的使用。字典是鍵值對的無序集合,是可變對象。鍵在字典中是*的且必須是不可變對象。值可以是可變對象或不可變對象。以下例子對python字典的定義、訪問、更新等的操作。 ?
文件的讀寫:python系統(tǒng)提供open()函數建立文件對象,并打開要讀寫的文件??蓪ξ募M行讀,寫,若不需要時,需關閉文件,釋放系統(tǒng)資源。