Python : 基礎語法-運算式

Python 新手必學!一次搞懂三大類基本運算子 (算術、比較、邏輯)

Python 新手必學!一次搞懂三大類基本運算子 (算術、比較、邏輯)

螢幕上顯示著 Python 程式碼,象徵程式設計的主題

剛開始學習 Python 時,我們很快就會接觸到「運算子 (Operators)」這個概念。如果說變數是儲存資料的容器,那麼運算子就是用來操作這些資料的「動詞」,它告訴程式該執行什麼樣的計算、比較或邏輯判斷。

掌握運算子,是您寫出實用程式的基礎。這篇文章將為您詳細介紹 Python 中最核心的三大類運算子:算術運算子、比較運算子和邏輯運算子。

1. 算術運算子 (Arithmetic Operators) - 讓 Python 成為你的計算機

算術運算子負責處理最基本的數學計算,是程式中最常用到的工具。

加法 +

說明:將兩個數值相加。

減法 -

說明:將前者減去後者。

乘法 *

說明:將兩個數值相乘。

實數除法 /

說明:將前者除以後者,結果會包含小數,即浮點數 (float)。

整數除法 //

說明:將前者除以後者,但結果會無條件捨去小數,只保留整數部分。

模除法 (取餘數) %

說明:回傳兩者相除後的餘數。

乘方 **

說明:計算前者的後者次方。例如 a ** b 即為 $a^b$。

【程式碼範例】

# 加法
result = 10 + 5
print(result)  # 輸出:15

# 減法
result = 20 - 4
print(result)  # 輸出:16

# 乘法
result = 3 * 6
print(result)  # 輸出:18

# 實數除法 (結果為浮點數)
result = 10 / 3
print(result)  # 輸出:3.3333333333333335

# 整數除法 (無條件捨去小數)
result = 10 // 3
print(result)  # 輸出:3

# 模除法 (取餘數)
result = 10 % 3
print(result)  # 輸出:1 (因為 10 除以 3 等於 3 餘 1)

# 乘方 (2 的 3 次方)
result = 2 ** 3
print(result)  # 輸出:8

2. 比較運算子 (Comparison Operators) - 賦予程式判斷的能力

比較運算子用於比較兩個值之間的關係。它的運算結果永遠只會有兩種:True (成立) 或 False (不成立)。這是程式中流程控制 (如 if 判斷式) 的基礎。

等於 ==

說明:判斷兩邊的值是否完全相等。注意:是兩個等號!

不等於 !=

說明:判斷兩邊的值是否不相等。

大於 >

小於 <

大於等於 >=

小於等於 <=

【程式碼範例】

x = 10
y = 5

# 判斷 x 是否大於 y
print(x > y)   # 輸出:True

# 判斷 x 是否等於 y
print(x == y)  # 輸出:False

# 判斷 x 是否不等於 y
print(x != y)  # 輸出:True

# 判斷 y 是否小於等於 5
print(y <= 5)  # 輸出:True

3. 邏輯運算子 (Logical Operators) - 組合你的判斷條件

當您有多個比較條件需要組合時,就需要邏輯運算子上場了。它能將多個 True / False 的結果結合成一個最終的 TrueFalse

and (而且)

說明:必須所有條件都為 True,最終結果才是 True。只要有一個是 False,結果就是 False。

or (或者)

說明:只要其中一個條件為 True,最終結果就是 True。除非全部為 False,結果才是 False。

not (相反)

說明:將條件的結果反轉。not True 會得到 Falsenot False 會得到 True

【程式碼範例】

age = 22
has_driver_license = True

# 判斷是否年滿 18 歲 "而且" 有駕照
can_drive = (age >= 18) and (has_driver_license == True)
print(f"可以合法開車嗎? {can_drive}")  # 輸出:可以合法開車嗎? True

# 判斷是否未成年 "或者" 沒有駕照
is_risky = (age < 18) or (has_driver_license == False)
print(f"有風險嗎? {is_risky}")          # 輸出:有風險嗎? False

# 使用 not 反轉條件
is_adult = age >= 18
print(f"是成年人嗎? {is_adult}")        # 輸出:是成年人嗎? True
is_minor = not is_adult
print(f"是未成年人嗎? {is_minor}")      # 輸出:是未成年人嗎? False

結論

今天我們學習了 Python 中最基礎也最重要的三種運算子:
  • 算術運算子 用來執行數學計算。
  • 比較運算子 用來比較數值,並回傳 TrueFalse
  • 邏輯運算子 用來組合多個比較結果,做出更複雜的判斷。

這些運算子是您未來打造各種程式邏輯的基石。現在,打開您的 Python 開發環境,親手練習一下這些範例,加深您的理解吧!

Python基礎語法-變數與資料型態

Python 搞懂「變數」與「資料型態」

Python 搞懂「變數」與「資料型態」

筆記型電腦螢幕上顯示著 Python 程式碼

歡迎來到 Python 的世界!當我們開始學習任何程式語言時,第一個需要認識的核心概念,就是如何儲存和管理資料。這篇文章將帶你認識程式設計中最基本的兩個元素:變數 (Variables)資料型態 (Data Types)

一、什麼是變數 (Variable)?程式的記憶儲物箱

想像一下,你有一個儲物櫃,裡面有很多個空的儲物箱。為了方便找到東西,你會在每個箱子上貼上標籤,例如「玩具」、「零食」、「書籍」。

在 Python 中,「變數」就扮演著這個「貼上標籤的儲物箱」的角色。它是一個在電腦記憶體中保留下來的空間,用來儲存資料,並且我們可以為它取一個獨一無二的名字(標籤),方便之後隨時取用。

變數的命名規則

為儲物箱貼標籤時有一些規則,才不會讓管理員(Python 直譯器)混淆:

  • 內容: 只能包含字母 (a-z, A-Z)、數字 (0-9) 和底線 (_)。
  • 開頭: 絕對不能用數字開頭。name1 可以,但 1name 是不行的。
  • 大小寫有別: my_nameMy_Name 是兩個完全不同的變數。
  • 最佳實踐: 名字最好有意義,讓人一眼就能看出它儲存了什麼資料,例如用 user_age 而不是 x 來儲存年齡。

實際操作:宣告與使用變數

在 Python 中,我們使用等號 = 來將資料「放進」儲物箱裡。這個動作稱為「賦值 (Assignment)」。

# 宣告變數並賦值
# 將 "Alice" 這個文字放進名為 name 的儲物箱
name = "Alice"
# 將 30 這個數字放進名為 age 的儲物箱
age = 30
# 將 3.14159 這個數字放進名為 pi 的儲物箱
pi = 3.14159

# 從儲物箱中取出資料並使用它
print(name)  # 會印出 "Alice"
print(age)   # 會印出 30
print(pi)    # 會印出 3.14159

二、資料型態 (Data Types):規定儲物箱能放什麼

現在我們有了儲物箱(變數),但不同種類的東西需要用不同材質的箱子來裝。你不會用一個紙箱去裝湯,對吧?

「資料型態」就是用來定義儲物箱(變數)可以存放哪種類型資料的規則。Python 很聰明,它會自動根據你放進去的資料,來決定這個變數的型態。

以下是幾種最常見的資料型態:

1. 整數 (Integer: int)

用於儲存完整的、沒有小數點的數字,可以是正數、負數或零。例如:1, -100, 5234

2. 浮點數 (Float: float)

用於儲存帶有小數點的數字。例如:3.14, -5.2, 10.0

3. 字串 (String: str)

用於儲存任何文字。重點是,文字內容必須被單引號 (') 或雙引號 (") 包圍。例如:"Hello, world!", 'Python programming'

4. 布林值 (Boolean: bool)

這是最簡單的型態,它只有兩個值:True (真) 或 False (假)。在程式中用於判斷是非對錯。例如:is_adult = True

5. 複數 (Complex: complex)

用於科學和工程計算,由實數部分和虛數部分組成。例如:3+4j, 1.5-2.8j

如何檢查資料型態? type() 函數

如果你不確定某個變數的資料型態,可以隨時使用內建的 type() 函數來詢問 Python。

x = 100       # 整數
y = 12.34     # 浮點數
z = "Hello"   # 字串

print(type(x))  # 會印出 <class 'int'>
print(type(y))  # 會印出 <class 'float'>
print(type(z))  # 會印出 <class 'str'>

三、資料型態轉換 (Type Conversion):幫資料變身

有時候,我們需要將變數從一種型態轉換成另一種型態,才能進行正確的運算。例如,你不能直接把數字 10 和文字 "20" 相加。

這時,我們可以使用 Python 提供的轉換函數:

  • int(): 將資料轉換為整數。
  • float(): 將資料轉換為浮點數。
  • str(): 將資料轉換為字串。
age = 25
print(age)
print(type(age))  # 查詢 age 的資料型態

# 將 age 變數從整數轉換成浮點數
age_float = float(age)

print(age_float)
print(type(age_float)) # 查詢新變數的資料型態

輸出結果:

25
<class 'int'>
25.0
<class 'float'>

總結:重點回顧

恭喜你!你已經掌握了 Python 程式設計的基石:

  • 變數 就像貼有標籤的儲物箱,用來儲存資料。
  • 資料型態 規定了變數能儲存的資料種類,常見的有 int, float, str, bool
  • Python 會自動判斷資料型態,我們也可以用 type() 函數來檢查。
  • 當有需要時,可以使用 int(), float(), str() 等函數進行型態轉換。

理解了這些基礎概念後,你就已經為接下來學習更複雜的程式邏輯打下了堅實的基礎。現在就動手試試,創建你自己的變數吧!

Python : Anaconda開發環境的優缺點


Anaconda 是一種針對數據科學和機器學習的 Python 發行版。它包含了許多常用的庫和工具,例如 NumPy、Pandas、Matplotlib、Scikit-learn 等,可以幫助用戶快速開始他們的項目。Anaconda 還具有易於使用的包管理工具 Conda,可以幫助用戶安裝、更新和管理其 Python 環境。

優點
易於使用:
Anaconda 非常易於安裝和使用,即使是初學者也可以輕鬆上手。

包含許多庫和工具:
Anaconda 包含了許多常用的數據科學和機器學習庫和工具,可以幫助用戶快速開始他們的項目。

出色的包管理:
Conda 是一種易於使用的包管理工具,可以幫助用戶安裝、更新和管理其 Python 環境。

跨平台支持:
Anaconda 支持 Windows、macOS 和 Linux 等多個平台。

Anaconda 預裝了 Jupyter Notebook,這是一個交互式筆記本環境,可用於數據分析和機器學習。

Anaconda 還預裝了 Spyder,這是一個具有集成開發環境 (IDE) 功能的 Python 編輯器。

Conda 可以用於創建和管理虛擬環境,這可以幫助用戶隔離不同的項目和依賴項。

Anaconda 還包含一個包搜索工具,可以幫助用戶查找和安裝新的庫。

缺點
體積龐大:
Anaconda 安裝程序體積龐大,可能需要一些時間才能下載和安裝。

佔用空間大:
由於包含了許多庫和工具,因此 Anaconda 安裝後會佔用大量的磁盤空間。

版本更新較慢:
Anaconda 的版本更新速度可能不如其他 Python 發行版快。

可能不適合所有應用:
Anaconda 專注於數據科學和機器學習,因此可能不適合所有應用程序。

Anaconda 的安裝程序體積約為 5 GB。

安裝 Anaconda 後,其佔用空間約為 15 GB。

Anaconda 的新版本通常每隔幾個月才發布一次。

Conda 與 pip(另一個流行的 Python 包管理工具)並不完全兼容。

結論
Anaconda 是一個功能強大且易於使用的 Python 發行版,非常適合數據科學和機器學習。但是,它體積龐大且佔用空間大,版本更新速度也可能較慢。
Anaconda 是一個功能強大且易於使用的 Python 發行版,非常適合數據科學和機器學習。但是,它體積龐大且佔用空間大,版本更新速度也可能較慢。用戶在決定是否使用 Anaconda 時應權衡這些優缺點。