今天有兩個學習重點
今天會帶給大家滿滿的思考模式
為什麼會學流程控制呢!?
其實這也是為什麼說學習程式~鍛鍊邏輯的最大目的喔!!
比較運算符 | 說明 | 範例 | 結果 |
---|---|---|---|
== |
等於 | 5 == 5 |
True |
!= |
不等於 | 5 != 3 |
True |
> |
大於 | 5 > 3 |
True |
< |
小於 | 3 < 5 |
True |
>= |
大於或等於 | 5 >= 5 |
True |
<= |
小於或等於 | 3 <= 5 |
True |
is |
判斷兩個對象是否是同一實例 | a is b |
False |
is not |
判斷兩個對象是否不是同一實例 | a is not b |
True |
in |
判斷值是否存在於集合中 | 'a' in 'abc' |
True |
not in |
判斷值是否不存在於集合中 | 'd' not in 'abc' |
True |
大家可以從數學的概念中很簡單的理解
這些符號跟單字
** 特別注意的是 **
在這個範例中,使用 >= 運算符來判斷年齡是否達到 18 歲。
age = 18
if age >= 18:
print("You are an adult.")
else:
print("You are a minor.")
這個重點等等會詳細跟大家分享,我們先看程式的描述來感受運算符號的用途
2.循環控制在這範例中我們要控制次數,執行五次
count = 0
while count < 5:
print(count)
count += 1
3.數據過濾
程式的題目最長出的,請篩選偶數給我
numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
even_numbers = [num for num in numbers if num % 2 == 0]
print(even_numbers)
4.物件比較
is 和 is not 運算符用來比較兩個變數是否指向相同的對象,這比 == 更高層次,因為它檢查的是物件的記憶體地址而不是它們的值。
a = [1, 2, 3]
b = [1, 2, 3]
print(a == b) # True, 因為值相同
print(a is b) # False, 因為兩個變數指向不同的物件
這邊表達的是,我們配置的變數空間都是獨一無二的記憶體位置。 => 就像你家格局一模一樣但住址肯定不同呀!
各位千呼萬喚始出來
我們最核心的程式思路出現辣
學會了邏輯的思考,流程控制
我們就可以更有感受的體悟學程式的感覺
空格格(縮排)在 Python 中的作用
在 Python 中,縮排 是** 強制性的**,它決定了程式區塊(block)結構。這與許多其他程式語言不同,例如 C、Java 或 JavaScript,這些語言通常使用大括號 {} 來界定程式區塊,縮排則是風格上的選擇。
通常在 Python 中都會使用 4 個空格或 1 個 tab決定程式的邏輯結構。
** 沒有正確縮排會導致 IndentationError 錯誤 **
python
def greet(name):
if name:
print(f"Hello, {name}")
else:
print("Hello, Roni!")
javascript
function greet(name) {
if (name) {
console.log(`Hello, ${name}`);
} else {
console.log("Hello, Roni!");
}
}
這個可以是python的重要點喔,但同時也是他簡潔易讀的好處~! (不過有時候空格錯誤就爆炸XD)
if就式英文的假如
也就是如果if後面的是 True
就會執行這個block區段的程式。否則就不做事
age = 20
if age >= 18:
print("You are an adult.")
流程圖
這邊我告訴了程式如果是滿18歲,你才會print成人的訊息喔
也就是沒有>=18程式就部會執行print那個區塊的程式
只有if我們看不出流程控制的精隨
接下來來學習更有趣的
age = 15
if age >= 18:
print("You are an adult.")
else:
print("You are a kid.")
從這邊就可開始感受到程式的有趣了
如果if 的條件沒有達成
else就會執行 (如果if沒有達成,必定執行喔~!!)
我們再繼續強化我們的程式
age = 16
if age >= 18:
print("You are an adult.")
elif age >= 13:
print("You are a teenager.")
else:
print("You are a child.")
我們的程式會按照上面的敘述來執行
圖片的概念會由左向右來判斷。如果達成了就會印出來
最後是最酷的範例
age = 20
if age >= 18:
if age >= 65:
print("You are a senior.")
else:
print("You are an adult.")
else:
print("You are a kid.")
大家可以看到我想表達的是
Step 1 檢查年齡開始~!
Step 2 >=18 走左邊 如果小於 就是印出minor
step 3 判斷是否年齡>65 如果是就是senior 否則就是adult
雖然教學的是先說明在劃出圖片。
但是我建議大家
撰寫程式的時候可以先思考流程圖怎麼走, 再去寫程式喔
如此一來,將可以比較精準地控制程式的走向
很多程式都是直接開幹
但是後來發現流程欠缺思考而導致失敗或是沒有考量的錯誤發生
大家可以思考這個問題從流程圖怎麼變成程式碼喔