Python 一直是我極想學習,卻又一直無疾而終的失敗目標,當然自己的無恆毅力是最大關係,2012 年初時知道偶像茶米老師願意將他的心血結晶分享出來,便滿懷期待,補完課之後,果然~原來名師不是浪得虛名,在教學歷程之中,真的藏了好多「撇步」。
感謝茶米老師以及促成這一切的環境因緣,讓我深有所得。
影片共有兩集:
- 【茶米老師教室】2022 最新版Python基礎入門課程(上)
- Google Colab 申請啟用與設定!(https://colab.research.google.com/notebooks/welcome.ipynb?hl=zh-tw)
- 又 Colab 在執行時,本身便是一部虛擬機,作業系統為「Debain Linux(buster/sid)」,這頗令我大開眼界呀。
- 常用 Markdown 語法簡述
- 信溢老師的學習筆記分享!(這我只能遠觀了)
- 變數設定 與 鑑別 分法
- 輸入與輸出
- 有基礎的人,也許直接跳「下集」便可。
- 【茶米老師教室】2022 最新版Python基礎入門課程(下)
- print()命令
- 註解
- 運算符號
- 算術運算符號:
- 比較運算符號:
- 邏輯運算符號:
- 複合指定運算符號:
- 運算符號優先權
- 判斷式
- 循序結構,程式預設執行方式。
- 選擇結構,條件式判斷的選擇執行方向,可分為:單向判斷、雙向判斷、多方判斷三種。
- 重複結構,可以重複執行指定的程式碼,當然也有停止執行的條件,或稱為「迴圈控制」。
- 自訂函式(類似「黑盒子」?)
- 直接執行,單純自說自話的函式
- 可接受外面傳入一個或一個以上參數的函式
- 不但可接受外面傳入參數,還可將處理完後的結果回傳
- 串列與整數串列
- python 的串列(List)類似於「陣列(Array)」。
- n[4]= 5,取出索引值為 4 的值
- n[1:4]= [1, 2, 3],取出索引值 1 ~ (4-1) 的值
- n[5:8]= [5, 6, 7],取出索引值 5 ~ (8-1) 的值
- n[0:9:2]= [0, 2, 4, 6, 8],取出索引值 0 ~ (9-1),且索引值間隔數為 2
- n[:]= [0, 1, 2, 3, 4, 5, 6, 7, 8, 9],串列值全部取出
- n[5:]= [5, 6, 7, 8, 9],取出索引值 5 ~ 最後面 的值
- n[-3]= [7],取出索引值 倒數 第3 的值
- n[-3:]= [7, 8, 9],取出索引值 倒數 第3 的值到最後的值
- n[::-1]= [9, 8, 7, 6, 5, 4, 3, 2, 1, 0],全部取出,但反轉呈現順序
- 整數串列,range(起始值, 終止值, 間隔值)
- list(range(8)) = [0, 1, 2, 3, 4, 5, 6, 7],若僅有一個值時,則為「終止值」
- list(range(0,10)) = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
- list(range(2,10,2)) = [2, 4, 6, 8]
- 迴圈(針對 list)
- 利用迴圈依序取出 串列裡的值
- 利用迴圈依序取出 串列裡的值,並加以計算
- 利用 range 生出 1~100 的list, 並利用迴圈依序取出 串列裡的值,且加以計算
我的筆記:
Colab (全名為「Colaboratory」) 可讓你在瀏覽器中編寫及執行 Python 程式碼,並具有以下優點:不必進行任何設定、免費使用 GPU、輕鬆共用。
雖然自己已有在小幅使用,但再聽茶米老師分享一次後,又是另種感受與收穫!
此次介紹的變數型態,大致可分 int(), float(), str(), Bool() 四種常用型態。
可利用 type() 來查詢變數型態!
input() , 從鍵盤進來的資料,都是「字串」,若需「運算」,則需要「轉換」資料型態。
print(),將處理結果輸出,預設最後面為「換行(\n)」。
可以使用 end=” ” 來設置輸出之後,最後面的「符號」。
sep=” ” 則是每個元素之間可以放置的「符號」。(這對我來說,非常重要與好用呀!)
影片
我的筆記:
語法:
print(項目1, 項目2, 項目3,…., sep=”分隔字元”, end=”結束字元”)
單行,用「#」,例如:# 註解內容。
多行,用兩個「”””」夾住註解內容,例如:“”” 註解內容 “””。
+、 -、 *、 /、 %(mod, 求「餘」)、 //(求「商」)、 **(「指數」計算)
==、 !=、 >、 >=、 <、 <=
not、 and、or
+=、 -=
if 條件式:
程式區塊
例:
if ( 國語成績 >= 60):
print(“及格!”)
if 條件式:
程式區塊 1
else :
程式區塊 2
例:
if ( 國語成績 >= 60):
print(“及格!”)
else :
print(“不及格!”)
if 條件式:
程式區塊 1
elif :
程式區塊 2
elif :
程式區塊 3
………
else :
程式區塊 4
例:
if ( 國語成績 >= 90):
print(“非常好!”)elif ( 國語成績 >= 75):
print(“不太妙!”)elif ( 國語成績 >= 60):
print(“要加油啦!”)else :
print(“不及格!”)
定義 sayHello 函式,呼叫後「僅」輸出「Hello」!
def sayHello():
print("Hello")
sayHello()
定義 sayHello 函式,可隨意接受人名,呼叫後輸出指定的人名,「Hello, 人名」!
def sayHello(name):
print("Hello,", name)
sayHello("John")
sayHello("Mary")
定義 sayHello 函式,可隨意接受人名,呼叫後可將處理結果放入變數中,再將此變數值回傳。
注意:自訂函式內之變數為「私域」變數,影響範圍僅止於此函式之中。
def sayHello(name):
msg = "Hello," + name
return msg
msg =sayHello("John")
print(msg)
串列(List)宣告方法就與一般陣列宣告方法一樣。
n 為一個串列,元素有 1,2,3,4,5,6,7,8,9。
宣告 n = [1,2,3,4,5,6,7,8,9] (注意:索引起始值從 0 開始)
colors = [“red”,”green”, “blue”]
for color in colors:
print(color, end=” “)
nums = [1,2,3,4,5]
total = 0
for num in nums:
total = total + num
print(total)
nums = range(1,101)
total = 0
for num in nums:
total = total + num
print(total)
番外篇
影片休息時間時,不意間發現「spacedesk」的蹤跡,原來茶米老師是利用「spacedesk」來整合「桌機」和「平板」來進行教學的。
網路已有許多文章在分享使用方法,這篇文章「Spacedesk 讓 iOS、Android 裝置變成 Windows 電腦第二螢幕的免費 App」也有略作說明。