隨著Python的進(jìn)一步發(fā)展,越來越多的現(xiàn)成的Python的機(jī)器學(xué)習(xí)的算法已經(jīng)發(fā)布出來。為了可以更好地運(yùn)用這些機(jī)器學(xué)習(xí)的算法,我們有必要對(duì)Python有個(gè)初步的了解。以下是小編為你整理的怎么去學(xué)習(xí)python ?
Python不同層級(jí)的語句之間間隔四個(gè)空格縮進(jìn), indentation。Python有比較嚴(yán)格的語法結(jié)構(gòu),需要不同層級(jí)的代碼之間相差四個(gè)空格,不然就不能編譯通過。 ?
Python中輸出到console是用print,然后接收鍵盤輸入是用raw_input(),示例name = raw_input(What's your name?);
?
寫完程序之后,要用不同的輸入來測(cè)試寫的程序是否正確。 ?
變量Variables,用于存儲(chǔ)后續(xù)可能用到的數(shù)據(jù) ?
數(shù)據(jù)類型Data Type,包含數(shù)值和布爾值 ?
注釋,當(dāng)行注釋用#,多行注釋"""開始"""結(jié)束,如下圖所示 ?
基本數(shù)學(xué)運(yùn)算符,+,-,*,/ ?
指數(shù)運(yùn)算符,** ?
取余運(yùn)算符,% ?
如何選擇版本
Python 2.x 和 3.x 通常已經(jīng)內(nèi)置在現(xiàn)代 Linux 發(fā)行版中,你可以立刻使用它。你可以終端模擬器中輸入 "python" 或 "python3"來進(jìn)入 Python shell, 并輸入 "quit()" 退出。 ?
如果你希望在鍵入 "python" 時(shí)使用 Python 3.x 而不是 2.x,你可以像下面一樣更改對(duì)應(yīng)的符號(hào)鏈接: ?
順便一提,有一點(diǎn)需要注意:盡管 Python 2.x 仍舊被使用,但它并不會(huì)被積極維護(hù)。因此,你可能要考慮像上面指示的那樣來切換到 3.x。2.x 和 3.x 的語法有一些不同,我們會(huì)在這個(gè)系列文章中使用后者。 ?
另一個(gè)在 Linux 中使用 Python 的方法是通過 IDLE (Python 集成開發(fā)環(huán)境),這是一個(gè)為編寫 Python 代碼而生的圖形用戶界面。在安裝它之前,你*查看一下適用于你的 Linux 發(fā)行版的 IDLE 可用版本。 ?
然后,你可以像下面一樣安裝它: ?
$ sudo aptitude install idle-python3.2 ?
安裝成功后,你會(huì)看到 IDLE 的運(yùn)行畫面。它很像 Python shell,但是你可以用它做更多 Python shell 做不了的事。 ?
集合的與操作
我們可以看到集合輸出的效果會(huì)有一個(gè)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
?
使用一個(gè)| 線表示 ,求出2個(gè)數(shù)的并集。 ?
vip = a_a.union(b_b) #并集print vip ?
集合中交集的表示 使用 ^ 表示求交集 ?
k = a_a ^ b_b #交集合 ?
print (a_a.intersection(b_b)) # 求交!!!! ?
集合中求出不同項(xiàng)目的結(jié)果 ?
print (a_a.difference(b_b)) ?
需要單獨(dú)說明的是求的是自己的和他人的不同,不是兩者一起的不同 ?
常用的元素
list (表)
l =[1,2,5,6] # 序列元素的下標(biāo)從0開始: # tuple元素不可賦值 # 基本樣式[下限:上限:步長] print(l[1]) # 2 print(l[0:3:2]) # [1, 5] print (l) #[1, 2, 5, 6] # list元素是可以改變的 l[1]=3 print(l) #[1, 3, 5, 6] #insert在list指定位置插入項(xiàng)目,如在list*個(gè)位置插入2 l.insert(1,2) print (l) #[1, 2, 3, 5, 6] # append在list末尾添加一個(gè)項(xiàng)目 l.append(7) print (l) #[1, 2, 3, 5, 6, 7] # pop移除給定位置的項(xiàng)目 l.pop(3) print (l) #[1, 2, 3, 6, 7] # pop()移除*的項(xiàng)目 l.pop() print (l) #[1, 2, 3, 6] # 刪除指定的項(xiàng)目,不是項(xiàng)目位置 l.remove(2) print (l) #[1, 3, 6] # 升序排序 l.sort(reverse=True) print (l) #[6, 3, 1] # 降序排序 l.sort(reverse=False) print (l) #[1, 3, 6] # 項(xiàng)目前后順序反過來 l.reverse() print(l) #[6, 3, 1]
tuple (表)
t1=() # 1個(gè)元素的tuple定義時(shí)必須加一個(gè)逗號(hào), print (t1) # 輸出() t2=(1,) print (t2) # 輸出(1,) t3=(1,3,5,6) print (t3) # 輸出(1, 3, 5, 6) # 計(jì)算元組元素個(gè)數(shù) print(len(t3)) # 輸出 4 # 序列元素的下標(biāo)從0開始: # tuple元素不可賦值 # 基本樣式[下限:上限:步長] print(t3[2:]) # 從下標(biāo)2開始到* 輸出(5, 6) print(t3[0:3:2]) # 從下標(biāo)0開始到下標(biāo)3(即下標(biāo)0和下標(biāo)2),步長為2 輸出(1, 5) # 返回元組中元素*值 print(max(t3)) # 輸出 6 # 返回元組中元素最小值 print(min(t3)) # 輸出 1 # tuple是不可變的,但tuple里的list可變 t4=(1,2,3,[4,5]) t4[3][0]=7 t4[3][1]=8 print(t4) # 輸出(1, 2, 3, [7, 8]) # tuple不可變但可以增加新的部分 t1=t2+t3 print (t1) # 輸出(1, 1, 3, 5, 6) # 將列表轉(zhuǎn)換為元組 l=[1,2,3] print(tuple(l))# 輸出 (1, 2, 3)