Python 教學基礎篇:初學者「一定要會」的基本語法與符號
無論是數據分析、人工智慧還是網站開發,Python 憑藉其簡單易懂的語法和強大的功能,迅速成為全球最受歡迎的程式語言之一。對於想要在職場中脫穎而出或轉換跑道的初學者而言,學習 Python 是一個明智的選擇,透過以下精心整理的「Python 教學基礎篇」,你將全面掌握 Python 必備的基礎語法和符號應用,打下穩固的程式語言基礎!
工欲善其事,必先利其器!認識 Python 開發環境 (IDE)
在正式進入 Python 教學前,需要先為學習 Python 準備適當的開發環境。Python 開發環境(IDE)是用來編寫、調試與執行程式碼的工具,目前主要有兩種類型:本機端開發環境與雲端開發環境。根據個人的需求與使用習慣,可以選擇最適合的開發環境來提升學習與工作效率。
Python 開發環境(一)本機端開發環境
這類開發環境適合經常離線工作、希望完整控制開發環境配置的使用者,需要先下載並安裝相關的軟體工具,接著才能在電腦上編寫 Python 程式,如 Python 官方軟體或是 VS Code 編輯軟體都是相當受歡迎的選擇。此外,也建議設置 Python 虛擬環境(venv)、或使用 Anaconda 內建的 Python 環境管理系統 (Conda),為每個專案創建獨立 Python 環境,方便使用者管理不同專案。
基礎 Python 教學:輸出與輸入
在 Python 中,輸出與輸入是基礎的內建函式。透過輸出 print() 函式與輸入 input() 函式,初學者可以快速上手,實現簡單的資料顯示與互動功能。
【輸出】 print()
將資料輸出至螢幕上。
- 基本語法:print(‘輸出內容’)
- 常見參數:
- sep:輸出多個項目間以設定的分隔字元隔開,預設為「一個空白」。
- end:輸出完畢後加入的結束字元,預設為換行符 \n 。
- 範例:
print('Hello', 'World', sep='-', end='!')
#輸出結果:Hello-World!
【輸入】 input()
可以讓使用者輸入內容,按下 enter 之後再進行下方的動作,並將輸入的內容賦值給變數。
- 基本語法:input(‘提示文字’)
- 範例:
name = input('姓名:')
【實際應用】數字加總
a = int(input('輸入第一個數字:'))b = int(input('輸入第二個數字:'))print('兩個數字相加結果是:', a+b)
基礎 Python 教學:變數
Python的變數是用來儲存資料的容器,相當於給某個資料指定一個名稱,並將該資料保存起來。這些資料可以是數字、字串、布林值等多種資料型態。
- 基本語法:變數名稱 = 值
- 命名規則:
- 變數名稱只能以英文字母 (A-Z, a-z)、數字 (0-9) 以及底線 ( _ ) 所組成,且不得以數字開頭、中間不能有空格。
- 變數名稱的大小寫很嚴謹,例如 age 與 Age 是兩個不同的變數。
- 建議使用有意義的名稱來描述變數所儲存的資料,如 score、height,以提高程式可讀性。
- 不可使用Python內建保留字,如 for、True、False、and、if、or、else 等等。
- 範例:
x = 1print(x)
#輸出結果:1
【實際應用】學生分數計算
math_score = 85 #數學成績english_score = 90 #英文成績science_score = 88 #科學成績average_score = (math_score + english_score + science_score) / 3 #計算平均分數print("學生的平均分數為:", average_score)
#輸出結果:學生的平均分數為: 87.66666666666667
基礎 Python 教學:文字
Python 中的文字與數字是兩種不同的資料型態。數字可以用來進行數學運算,而文字(字串 string)則包含字母、數字、符號、標點、空格等內容,需要標上「引號」,且無法進行算術計算。
- 基本語法:"這是一個字串"或'這是一個字串'或'''這是一個字串'''
- 命名規則:引號內不可使用特殊字元,如 \r 。若要使用反斜線則要用 \\ 才能正確顯示。
- 範例:
a = ‘Python’b = ‘教學’c = a + bprint(c)
#輸出:Python教學
【實際應用】字串切片 (Slice):可以透過 [start:end] 語法來提取字串的特定部分。
a = ‘Python教學’print(a[0:6])
#輸出:Python
【實際應用】字串長度:使用 len() 函式可以取得字串的長度。
a = ‘Python教學’print(len(a))
#輸出:8
基礎 Python 教學:數字
數字是 Python 的基本資料型態,常見的數字類型包括整數、浮點數、底數以及布林值,這些數字可以進行各種運算,例如加減乘除等數學操作,也能在程式中用來做邏輯判斷或其他功能。
- 數字種類與規則:
- 整數 (Integer)
- 不帶小數點的數字,如 5、-3。
- 數字的「開頭」不可為 0 ( 除非是「底數」 )。
- 使用 int() 宣告,可將字串轉換成數字。
- 浮點數 (Float)
- 帶小數點的數字,如 5.1、-0.5。
- 使用 float() 宣告,可將字串轉換成數字。
- 底數:
- 用來表示二進制、八進制或十六進制數字。
- 二進制以 0b 開頭,八進制以 0o 開頭,十六進制以 0x 或 0X 開頭。
- 布林值 (Boolean)
- 只有兩個值,True 和 False,常用於邏輯判斷。
- True 相當於數字 1,False 相當於數字 0。
- 使用 bool() 函式,可將任何資料型態轉換成布林。
- 整數 (Integer)
- 基本運算子:
- +:加法
- -:減法
- *:乘法
- /:除法
- //:整數除法,取整數部分
- %:取餘數
- **:次方運算
- 範例:
a = 5b = 2print(a + b) #7print(a - b) #3print(a * b) #10print(a / b) #2.5print(a // b) #2print(a % b) #1print(a ** b) #25
【內建函式】
| 方法 | 參數 | 說明 |
| int() | x | 將 x 轉換成整數。 |
| float() | x | 將 x 轉換成浮點數。 |
| abs() | x | 回傳 x 的絕對值。 |
| divmod() | x, y | 回傳 x 除以 y 的商和餘數。 |
| max() | iter | 回傳可迭代物件 iter 裡的最大值。 |
| min() | iter | 回傳可迭代物件 iter 裡的最小值。 |
| pow() | x, y, z | 回傳「x 的 y 次方」或「x 的 y 次方除以 z 的餘數」。 |
| round() | x, y | 回傳四捨五入後的 x,y 表示四捨五入的小數點位數。 |
| sum() | iter, y | 回傳串列或 tuple 的數值與 y 的加總。 |
| complex | x, y | 回傳「x + yj」的複數形式。 |
| bool() | x | 將參數 x 轉變成布林值 False 或 True。 |
【實際應用】攝氏/華氏轉換公式
c = int(input('輸入 1 ( 攝氏 ) 或 2 ( 華氏 ):')) #使用變數 c 記錄攝氏還是華氏t = int(input('輸入溫度數值:')) #使用變數 t 記錄要轉換的數值if c == 1:print(f'攝氏 {t} 度等於華氏 {9/5*t+32} 度') #套用攝氏轉華氏公式else:print(f'華氏 {t} 度等於攝氏 {(t-32)*5/9} 度') #套用華氏轉攝氏公式
#補充:在 '' 前加上 f,可使字串中被 {} 所括的變數被正確讀出,而不會視為字元。
延伸閱讀:
Python資料型態基本4類型,計算及使用技巧說明
基礎 Python 教學:縮排與註解
在 Python 中,縮排是用來區分程式碼不同區塊的重要格式。與其他語言使用大括號 {} 來標示區塊不同,Python 透過縮排來表示程式碼的結構。根據 Python 標準 (PEP 8) 的規範,通常使用「4個空白」來進行縮排,但也可以使用一個 tab 或 2-6 個空白,只要保持一致即可。
而註解是用來對程式碼進行說明和解釋的內容,並不會影響程式的執行。Python 提供3種註解方式:
- 單行註解:使用 # 開頭,該行後的內容將不會被執行。
- 範例
#這是一個單行註解print(‘Hello, World!’) #這是程式碼後面的註解
- 多行註解:使用三個單引號 ''' 或三個雙引號 """ 包圍,可以進行多行註解,適合長段落的說明。
- 範例
'''
這是多行註解,
可以用來描述較長的程式邏輯。
'''print(‘Hello, World!’)
- TODO 註解:當程式碼有部分尚未完成或需要改善時,可以使用 #TODO 來標記待辦事項,方便日後回來修改。
- 範例
#TODO:未來應該將此函式改為支援更多輸入參數def simple_add(a, b):return a + b
基礎 Python 教學:邏輯判斷式與迴圈
【邏輯判斷】
在 Python 中,邏輯判斷主要透過 if、elif 和 else 來實現,並決定某段程式是否執行。邏輯判斷可以根據條件來控制程式的流程,處理多樣的情境。
- 基本語法:
- if 條件:
執行程式 - elif 其他條件:
執行其他程式 - else:
執行預設程式
- if 條件:
- 範例:
a = 5if a > 10:print("a 大於 10")elif a > 3:print("a 大於 3 且小於等於 10")else:print("a 小於等於 3")
【邏輯運算】
除了基本的 if 判斷外,還可以使用邏輯運算子 and 與 or 組合多個條件。「and」指當所有條件都成立時,結果為 True。而「or」只要有一個條件成立,結果便為 True。
- 範例:
a = 5b = 10if a > 3 and b < 15:print("條件成立")if a > 6 or b < 15:print("至少有一個條件成立")
【重複迴圈】
當程式需要多次執行相同的操作時,可以使用迴圈來簡化程式碼。Python 提供 for 和 while 迴圈來處理這些情況。
- for 迴圈:用於遍歷一個可迭代物件(例如字串、串列)。
- 基本語法:
for 變數 in 可迭代物件:
執行程式 - 範例:
- 基本語法:
for i in range(5):print(i) #每行個別印出0 1 2 3 4,共5行
- while 迴圈:若符合條件則繼續執行。
- 基本語法:
while 條件:
執行程式 - 範例:
- 基本語法:
i = 0while i < 5:print(i) #每行個別印出0 1 2 3 4i += 1
【實際應用】計算成績等級
score = 85if score >= 90:print("成績等級為 A")elif score >= 80:print("成績等級為 B")elif score >= 70:print("成績等級為 C")else:print("成績等級為 D")
#輸出結果:成績等級為 B
延伸閱讀:
【Python學堂】新手入門第四篇-Python的流程控制:判斷
Python迴圈教學:while, for_in, range語法及應用- 巨匠電腦
基礎 Python 教學:串列 (list)
串列 (list) 是 Python 中最常用的資料結構之一,它可以儲存多個不同資料型態的元素,如整數、字串、甚至是其他串列。串列使用中括號 [ ] 來定義,並用逗號來分隔每個元素。串列的靈活性讓它在程式設計中極為實用。
- 基本語法:my_list = [內容, 內容, 內容]
- 範例:
- 建立串列:可以使用中括號 [ ] 來定義一個新的串列,也可以使用 list() 函式來將其他可迭代物件轉換為串列。
test = [123, True, 'word'] #建立多種資料型態在同一串列內fruits = ['apple', 'banana', 'cherry'] #建立字串串列numbers = list((1, 2, 3, 4, 5))
#使用 list() 建立數字串列
-
- 讀取串列中的元素:可以透過索引 (offset) 來取得特定位置的元素,索引從 0 開始,也可以使用負數來從後面開始讀取。
print(fruits[0]) #輸出 'apple'print(fruits[-1]) #輸出 'cherry'
-
- 修改串列中的元素:可以直接透過索引來修改某個位置的元素。
fruits[1] = 'blueberry' #將 'banana' 修改為 'blueberry'
-
- 添加元素:使用 append() 在串列末尾新增元素,或使用 insert() 在指定位置插入元素。
fruits.append('kiwi') #在串列末尾添加 'kiwi' fruits.insert(1, 'mango') #在索引 1 處插入 'mango'
-
- 刪除元素:可以使用 remove() 刪除指定的元素,或使用 pop() 刪除並返回指定位置的元素。如果不指定位置,pop() 會刪除最後一個元素。
fruits.remove('apple') #刪除 'apple' last_fruit = fruits.pop() #刪除並返回最後一個元素
【實際應用】學生名單管理
students = ['Alice', 'Bob', 'Charlie'] #學生名單 students.append('David') #新增學生 'David' students.remove('Bob') #移除學生 'Bob' print("更新後的學生名單:", students)
#輸出結果:更新後的學生名單: ['Alice', 'Charlie', 'David']
基礎 Python 教學:元祖 (tuple)
元組 (tuple) 是一種不可變的序列結構,與串列 (list) 相似,但元組一旦建立,內容便無法修改,因此特別適合處理需要固定資料的情境。元組使用小括號 () 來定義元素,並且如果只有一個元素,後面需要加上逗號來區分。
- 基本語法:my_tuple = (內容, 內容, 內容)
- 範例:
- 建立元組:可以使用小括號和逗號來定義元組,或者使用 tuple() 函式將其他資料結構轉換為元組。
fruits = ('apple', 'banana', 'cherry') #使用小括號建立元組numbers = tuple([1, 2, 3]) #使用 tuple() 函式將串列轉換為元組
-
- 讀取元組中的元素:元組的元素可以透過索引值來讀取,與串列的操作方式相同。
print(fruits[0]) #輸出 'apple'print(fruits[-1]) #輸出 'cherry'
-
- 合併與重複元組:可以使用 + 號合併兩個元組,或者使用 * 號重複元組中的元素。
combined_tuple = fruits + numbers #合併元組repeated_tuple = fruits * 2 #重複元組
-
- 元組的不可變性:元組一旦建立,便無法修改其中的內容。如果需要修改元組,可以將其轉換為串列,進行修改後再轉回元組。
fruits_list = list(fruits) #轉換為串列fruits_list.append('grape') #添加新元素fruits = tuple(fruits_list) #轉換回元組print(fruits) #輸出 ('apple', 'banana', 'cherry', 'grape')
【實際應用】計算兩點之間的距離
import math #引用math函式庫point1 = (0, 0) #第一個點的座標(x, y)point2 = (3, 4) #第二個點的座標(x, y)
#使用勾股定理計算距離distance = math.sqrt((point2[0] - point1[0]) ** 2 + (point2[1] - point1[1]) ** 2)print("兩點之間的距離為:", distance)
#輸出結果:兩點之間的距離為:5.0
基礎 Python 教學:字典 (dictionary)
字典 (dictionary) 是一種用來儲存資料的容器,允許透過「鍵 (key)」來存取對應的「值 (value)」。字典沒有順序性,因此每個元素的存取是依賴於鍵而不是索引。字典的應用廣泛,可根據特定鍵快速查找和操作資料。
- 基本語法:my_dict = {'name': 'John', 'age': 25, 'city': 'New York'}
- 範例:
- 字典可以使用大括號 {} 或 dict() 函式來建立,鍵和值之間使用冒號: 來分隔。
person = {'name': 'John', 'age': 25, 'city': 'New York'}empty_dict = {} #建立空字典
-
- 讀取字典中的值:使用中括號 [ ] 或 get() 函式來讀取字典中的值, get() 函式能避免當鍵不存在時回傳錯誤訊息。
print(person['name']) #輸出 'John'print(person.get('city')) #輸出 'New York'print(person.get('address','未知地址')) #鍵不存在時輸出 '未知地址'
-
- 修改字典中的值:可以透過指定鍵的方式來修改其對應的值,或使用 setdefault() 函式來添加新鍵值組。
person['age'] = 30 #修改年齡person.setdefault('job','Engineer') #新增職業print(person)
-
- 刪除字典中的項目:使用 del 刪除特定鍵值組,或使用 pop() 函式將項目取出並刪除。
del person['city'] #刪除 'city'x = person.pop('age') #將取出並刪除 'age'print(person)
-
- 結合字典:使用 update() 將多個字典結合,或使用 ** 將字典拆解為 keyword arguments 列表,再利用 {} 組合,將不同的字典合併為新的字典。
extra_info = {'weight': 70, 'height': 180}person.update(extra_info) #合併person與extra_info兩個字典
【實際應用】記錄商品庫存
inventory = {'apple': 50, 'banana': 100, 'orange': 80}
#讀取庫存量print("蘋果庫存:", inventory['apple'])
#增加庫存inventory['banana'] += 20print("香蕉庫存更新後:", inventory['banana'])
#刪除商品del inventory['orange'] #刪除柳橙的庫存print("更新後的庫存:", inventory)
#輸出結果:
#蘋果庫存:50
#香蕉庫存更新後: 120
#更新後的庫存: {'apple': 50, 'banana': 120}
基礎 Python 教學:集合 (sets)
集合 (set) 是 Python 的一種資料結構,類似於字典,但集合裡只有鍵 (key),沒有對應的值 (value)。集合中的元素是唯一的,也就是說不會包含重複的資料。因此,集合非常適合用來處理需要去除重複值的操作,及查找交集、聯集或進行其他集合運算的情況。
- 基本語法:my_set = {1, 2, 3, 4}
- 範例:
- 建立集合:使用 set() 或大括號 {} 來建立集合,注意大括號建立的是集合,而不是字典,字典需要鍵值對。
my_set = {1, 2, 3, 4} #使用大括號empty_set = set() #使用set()建立空集合
-
- 加入項目:使用 add() 函式向集合添加元素,集合不會允許重複的元素。
my_set.add(5) #加入數字 5print(my_set) #{1, 2, 3, 4, 5}
-
- 移除項目:可以使用 remove() 或 discard() 移除集合中的項目,兩者不同之處在於,remove() 移除不存在的元素會引發錯誤,而 discard() 不會。
my_set.remove(1) #移除 1my_set.discard(99) #移除不存在的元素,不會報錯
-
- 集合運算:集合支援4種常見的集合運算:交集、聯集、差集和對稱差集,這些運算可以透過對應的運算子或方法來實現。
a = {1, 2, 3, 4}b = {3, 4, 5, 6}print(a & b) #交集(a and b):{3, 4}print(a | b) #聯集(a or b):{1, 2, 3, 4, 5, 6}print(a - b) #差集(a or b):{1, 2}print(a ^ b) #對稱差集(a or b)-(a and b):{1, 2, 5, 6}
-
- 子集合與超集合: issubset() 檢查集合是否為另一集合的子集合,issuperset() 檢查是否為超集合。
a = {1, 2, 3}b = {1, 2, 3, 4, 5}print(a.issubset(b)) #True(表示a是b的子集合)print(b.issuperset(a)) #True(表示b是a的超集合)
【實際應用】共同好友查找
friends_A = {"Alice", "Bob", "Charlie"} #使用者 A 的好友friends_B = {"Bob", "David", "Charlie"} #使用者 B 的好友common_friends = friends_A & friends_Bprint("共同好友:", common_friends)
#輸出結果:共同好友: {'Charlie', 'Bob'}
延伸閱讀:
【Python學堂】新手入門第六篇-Python的四種資料結構類型
Python陣列是什麼?完整解析一維/二維/多維陣列,list,tuple!
Python 實用學習工具與資源推薦
Python 是一門強大且易於入門的程式語言,擁有豐富的學習資源和工具,無論是自學還是參加課程,都可以輕鬆上手。以下推薦一些實用的學習資源,供有興趣學習 Python 的人參考:
【Python 實用學習工具與資源】Python 官方文件
Python官方文件是學習 Python 的權威資源,提供詳細的語法、函式和模組說明,適合希望深入鑽研的學習者。官方文件不僅包含基礎知識,也有進階應用、實踐的建議,無論是初學者還是專業開發者,都能從中找到所需的資料。
【Python 實用學習工具與資源】在線課程
線上課程為自學提供了便利的選擇,如 Udemy 提供豐富的 Python 教學課程,涵蓋各種專業主題,包括網頁開發、數據科學和人工智慧; W3Schools 則是免費的在線學習平台,提供簡單易懂的教程,適合初學者學習 Python 語法與基礎概念。
【Python 實用學習工具與資源】巨匠電腦課程
若是自學遇到瓶頸或希望快速進階的學習者,就十分推薦選擇巨匠電腦的系統化 Python 教學課程,如 Python 與 AI 人工智慧開發入門 、 Python 機器學習應用開發 、 Python 深度學習應用開發 、 Python 人工智慧整合開發 這4堂從入門到進階開發的 Python 程式語言全方位課程,涵蓋從基礎到進階的知識,融入了實務應用和產業趨勢,並且有專業師資隨時提供解答!
巨匠電腦課程的一大特色是其系統化的學習規劃。從 Python 基礎語法到複雜的數據分析技術,每個主題都經過精心安排,確保學習者能夠循序漸進,穩步提升,不僅能打下紮實的技術基礎,更著重培養解決實際問題的能力。通過豐富的案例分析和項目實作,學員能夠培養出在職場中極為寶貴的實戰技能。
而若想就讀資訊相關科系、對程式設計感興趣的學生們,巨匠電腦的 青少年 Python 課程無疑是一個絕佳的選擇。這個為期 36 小時的課程專為國、高中生設計,可以接觸到當前熱門的技術應用,如網路爬蟲、資料處理,甚至是 AI 應用程式的開發,不僅讓學生們能夠在實際操作中學習程式設計,更能培養邏輯思考能力和解決問題的技巧。
因此,從入門到進階,再到專業應用,巨匠電腦的 Python 課程體系為學習者提供了一個全面且高效的學習路徑。無論是希望快速提升技能的職場人士,還是立志於未來從事程式設計的學生,都能在這裡找到適合自己的 Python 教學課程!
更多推荐




所有评论(0)