Python筆記 - MrBearTW/TCFST GitHub Wiki

Ch1

學3.5之後就對了,2就先放生

安裝預設會裝到C:\Users\user\AppData\Local\Programs\Python
不是一般的ProgramFile

Ch2

REPL Read-Eval-Print-Loop = Python Shell

保留字Keywords只有Non True False是大寫

每一個.py檔本身就是一個模組Module

套件Package資料夾內要建立一個__init__.py的檔案,空白也沒關係
多個模組+設定檔=套件

進入REPL
import sys
sys.path
看目前path有哪一些

sys.path.append('c:\\JavaSpace\\Python')
加入之後可以直接呼叫模組,要兩個\

Ch3 型態與運算子

type() 知道型態
int(True)=1 T和F要大寫
int(False)=0
oct() 轉八進位
hex() 轉十二進位
bin() 轉二位
ord('') 求編碼
bool() 0、空值、空字串、空Tuple、空字典、空清單-->回傳False,其他回傳True
複數型態 a + 3j 型態為complex (因為i常被拿去做電流相關用途)

\ 反斜線
\n 換行
\0 空字元
\t TAB

print('',sep=' ',end='\n')
end預設是換行,不換的話end=''就可
sep分隔預設是空一格

%%才能在字串中使用%

{}佔位符號

[]List清單(陣列) 有順序
vs.
{}Set集合 無加入的順序,且不能重複
vs.
()Tuple 建立後(結構)就不能變動了,Tuple內放List的話就可以變動

{'':}Dict字典 {'A':5566,'B':9487}

list
lists.remove(9) ## 砍數值9,從前面開始找,不太精確的用法
del lists[2] ## 砍位置

tuple 值後面加,逗號即可建立

變數與運算子

算錢用浮點,遲早被人扁

/ 留小數
// 只留整數 與浮點數運算的話還是會留小數

== , != 物件的實際值、狀態
is ,isnot 比較參考的物件

比較字串 逐字元依字典順序比較

Ch4

縮排決定結構 Tab Space不要開玩笑亂用

迴圈:不會一個Function call一個Function
遞迴:會一個Function call一個Function 會比較好讀 例如做階乘 較耗資源

for in :

https://googoodesign.gitbooks.io/-ezpython/content/chapter_2.html

def 就是定義一個函式

遞迴能避免就避免,很耗資源,很容易記憶體不夠用

python的lamda不是太強大,跳過

模組 global
└ 函式 nonlocal(少用)
└ 子函式

yield 禮讓 給函式的呼叫
yield from是個過度字,被async await取代了

Ch5

物件導向 封裝 繼承 多型

python class的屬性是黏上去的

self這個類似Java的this

__雙底線的效果類似private

Ch6 繼承

自己念

Ch7 例外處理 Exception

處理 "零"
https://docs.python.org/3.5/library/exceptions.html

raise 類似Java的 throw
finan

http://blog.fukuball.com/lin-xuan-tian-jiao-shou-ji-qi-xue-xi-ji-fa-machine-learning-techniques-di-13-jiang-xue-xi-bi-ji/
http://martin.zinkevich.org/rules_of_ml/rules_of_ml.pdf?utm_campaign=CodeTengu&utm_medium=web&utm_source=CodeTengu_100
http://www.cdms.org.tw/index.php/publications/books