Python基礎語法
講師:王裕佳
成功高中電研教學
學術力: Web, Flutter(Android, Windows, Web)
個性: 內向、害羞
興趣: 畫畫、音樂
專長: 電子設計
Python 安裝
搜尋
"Python"並點擊
"Download Python"


補充:
在家可以使用
Microsoft Store
直接搜尋找個版本安裝
截至2026最新版本為3.14
這裡可以直接下載最新版
建議選擇 Standalone (獨立版)
也可能長這樣



如果遇到請最大化視窗
就
會
變
Python 3.15 之後將改為使用 Pytohn install Manager

下載完成後打開安裝程式
如果已經有其他版本會出現此畫面
按下 Upgrade Now 更新


先打勾兩個
再點擊 Install Now
進行安裝
2
1


開始裝到電腦
下載完成
Google Colab
Google Colab
免費的 Python環境
寫的程式可以線上執行
自動儲存到雲端硬碟
What is
首先,搜尋Colab

尚未登入
點擊「新增筆記本」


已經登入


重新命名
執行按鈕
5min
- 登入帳號
- 進入 Google Colab
輸出-print()
第一個 Python 程式碼
print()
印出括號內的值
"Hello, World!"
字串
執行結果


print()-多行的輸出
當你把print寫成三行後,
他也會輸出三行。
執行結果


print()-一行字的字尾
print("Hello",end="***")
print("How are you",end="***")
print("Hi",end="***")print("Hello",end="\n")
print("How are you",end="\n")
print("Hi",end="\n")end="..." 在print的尾部,加上...
執行結果
執行結果


預設是 \n (換行)
試試看
Code:
?
使用三個print與 end=""
輸入:
無
輸出:

5min
試試看
Code:
輸出:

5min
分成三行print(),
把end設為"~~~"
print("A",end="~~~")
print("B",end="~~~")
print("C",end="~~~")Ans
Python print() 參數總結
| 參數名稱 | 說明 | 預設值 | 型別 |
|---|---|---|---|
| *objects | 要輸出的內容 (多個物件用逗號隔開) | 無 | Any |
| sep | 物件之間的分隔字元 | ' ' (空格) | 字串 |
| end | 輸出結束後的結尾字元 | '\n' (換行) | 字串 |
| file | 設定輸出位置 (如檔案) | sys.stdout | 物件 |
| flush | 是否強制刷新緩衝區 | False | 布林值 |
變數宣告&資料型態
| 值 | 型態名稱: |
|---|---|
| 整數(1、2、3......) | 整數 int |
| 小數(1.1、1.2、1.5......) | 浮點數 float |
| 真、假(True、False) | 布林 bool |
| 字串(Hello、Hi、Meow) | 字串 str |
| 字典 | dict |
| 清單 | list |
| 元組 | tuple |
| 集合 | set |
C++ 宣告變數
Python 宣告變數
a = 100
b = 3.14
c = "hello world"
d = True
e = False
int a = 100;
float b = 3.14;
string c = "hello world";
bool d = true;
bool e = false;
type()-輸出變數型態
a = 100
b = 3.14
c = "hello world"
d = True
e = False
print(a)
print(type(a))
print(b)
print(type(b))
print(c)
print(type(c))
print(d)
print(type(d))
print(e)
print(type(e))
執行結果
先宣告變數
印出變數
輸出變數型態
type()
輸出變數的資料型態
Python-變數型態強制轉換
x = 1
int_x = int(x)
float_x = float(x)
str_x = str(x)
print(int_x)
print(type(int_x))
print(float_x)
print(type(float_x))
print(str_x)
print(type(str_x))先宣告變數
把變數型態改變
整數 : int()
浮點數 : float()
字串 : str()
最後輸出
變數
變數的資料型態
執行結果

試試看
在 Python 中:
0x6767 是什麼型別?
1min
試試看
在 Python 中:
0x6767 是什麼型別?
5min

Ans
註解
Comment
註解的功用是:
- 讓他人比較容易讀懂你的程式
- 處理程式錯誤時,比較方便
- 筆記
# - 單行註解
print(" ") # 印出一個空格

+
""" - 多行註解
"""
自動領獎工具
透過OCR辨識當螢幕上出現"領取"文字就對其按下左鍵
"""註解之-快捷鍵
選取想註解的程式碼
按下 Ctrl + /
就可以一次註解多行程式碼啦~
目前使用的Google Colab可以
但不是所有的環境都可以
字串格式語法
f-string
先看看程式碼~~
x=10
y=20
print(f"x={x},y={y}")
可以看到,這裡把 f 放到了" "的前面
執行結果


o
因為 f
字串間可以使用 {} 來把 x、y...變數放入
比較一下
x=10
y=20
print(f"x={x},y={y}")V.S
x=10
y=20
print("x={x},y={y}")

執行結果


輸入
input()
input()-輸入
執行結果

輸入

輸入的字
輸出的字
x=input()
y=input()
z=input()
print(x)
print(y)
print(z)把 x y z 都設為 input() 後,
依序輸出 x y z
input() - 變數用法
input()-輸入
x=input()
print(type(x))1.把 x 設置為input()
2.print出 x 的資料型態
執行結果
print 出的資料型態
(其資料型態為string字串)

為什麼我輸入整數,
但型態卻不是 int整數 而是 string字串 呢?

input()-改變輸入的資料型態
x=int(input())
print(x)
print(type(x))1.把 x 設置int(input())
(用int包著input(),把型態從string轉換成int)

執行結果
資料型態已經變成int了
試試看
輸入 x(1)、y(1.5)後,
輸出 x 和 x 的資料型態(限定int)
輸出 y 和 y 的資料型態(限定float)
範例輸入:
範例輸出:


5min
試試看
x=int(input())
y=float(input())
print(x,type(x))
print(y,type(y))x=int(input())
y=float(input())
print(x,type(x))
print(y,type(y))
把 x、y 的 input() 型態設置為 int 和 float 後
輸出 x , x 的型態type(x)
輸出 y , y 的型態type(y)
5min
Ans
map(int,input().split())
a,b,c,d,e = map(int,input().split())
print(a)
print(b)
print(c)
print(d)
print(e)input() 的資料型態
把 input() 以 .split(~) 括號內做分割
沒放默認為空白
執行結果

輸入
輸出
用空格隔開的輸入
運算
Arithmetic
四則運算&取整數、取餘數、指數
| 符號 | means | 運算 |
|---|---|---|
| + | 相加 | 1+1=2、1+2=3、2+3=5 |
| - | 相減 | 2-1=1、3-2=1、5-2=3 |
| * | 相乘 | 2*2=4、3*5=15、4*6=24 |
| / | 相除 | 6/3=2、5/3=1.66666、10/7=1.42857 |
| ** | 指數運算 | 2**2=4、2**3=8、3**2=9 |
| // | 相除取整數 | 6//3=2、5//3=1、20//7=2 |
| % | 相除取餘數 | 6%3=0、5%3=2、20%7=6 |
先看程式碼~~
x=5
y=3
print("x+y=",end="")
print(x+y)
print("x-y=",end="")
print(x-y)
print("x*y=",end="")
print(x*y)
print("x/y=",end="")
print(x/y)
print("x**y=",end="")
print(x**y)
print("x//y=",end="")
print(x//y)
print("x%y=",end="")
print(x%y)先指定 x y
印出 x , y 的運算
執行結果

但是這樣程式好長喔,
感覺打了一堆重複的東西
f-string 與運算
x=5
y=3
print(f"x+y={x+y}")
print(f"x-y={x-y}")
print(f"x*y={x*y}")
print(f"x/y={x/y}")
print(f"x**y={x**y}")
print(f"x//y={x//y}")
print(f"x%y={x%y}")利用 f-string
可以在""中使用{}處理運算
執行結果

復合賦值運算子
| 原始式子 | 簡寫 | 運算 |
|---|---|---|
| x = x + 5 | x += 5 | 10 + 5 = 15 |
| x = x * 5 | x *= 5 | 10 * 5 = 50 |
| x = x - 5 | x -= 5 | 10 - 5 = 5 |
設 x = 10
試試看
輸入 x、y、z後,
輸出x-y+z
輸出x+y*z
利用f-string
範例輸入:
範例輸出:

5min

試試看
x,y,z = map(int,input().split())
print(f"{x}-{y}+{z}={x-y+z}")
print(f"{x}+{y}*{z}={x+y*z}")把 x y z 都設為 input() 後,
利用f-string處理
x、y、z
x-y+z、x+y*z
5min
Ans
在除法時,你可能會遇到:
算到小數第3位、第5位...
x=5
y=3
print(f"{x}")
print(f"x={x}, y={y}")
print(f"{x} / {y} = {x/y}")
print(f"{x} / {y} = {x/y:.2f}")
print(f"{x} / {y} = {x/y:6.2f}")執行結果

print(f"{x} / {y} = {x/y}")
print(f"{x} / {y} = {x/y:.2f}")
print(f"{x} / {y} = {x/y:6.2f}")
{x/y:.2f} 小數點後2位
{x/y:6.2f} 6->總寬度為六,.2f小數點後2位
試試看
輸出
20除7,到小數第7位
20除7,到小數第3位,總共7位數
範例輸入:
無
範例輸出:

5min
試試看-Ans
print(f"20 / 7 = {20/7:.7f}")
print(f"20 / 7 = {20/7:7.3f}")用:.7f 設置為小數第7位
:7.3f 設置7位數,小數第3位

有時候,
你可能會想要把變數的值互換
x=5
y=3
x,y=y,x
print(x,y)1st 先設定好 x 、 y
2nd x , y = y 的值(3) , x 的值(5)
印出 x、y
如此
x=y的值(3)
y=x的值(5)
執行結果

x,y=y,x
對應的位置對到對應的值
試試看
輸入整數 x、y、z
讓x=y,y=z,z=x後
輸出 x、y、z
範例輸入:
範例輸出:

5min

試試看
x,y,z = map(int,input().split())
x,y,z=y,z,x
print(x,y,z)先把 x、y、z設為整數輸入
接著,讓x,y,z=y的值,z的值,x的值
最後,輸出 x y z
x,y,z=y,z,x
x 對應到 y 的值
y 對應到 z的值
z 對應到 x的值
Ans
5min
邏輯運算
縮排

表示程式碼區塊
區塊內的每一行一定要對齊
if
如果條件運算式為真
就做...
if True:
print("True")記得要縮排(按下鍵盤 Tab )
執行結果

偽值 Falsy - 視為 False 不執行:
False, 0, 0.0, "", [], {}, (), set(), None
真值 Truthy - 視為 True 執行:
True, -3, 0.1, " ", [0]...
if 條件運算式:
...
if-else
if(True):
print("True")
else:
print("False")

if(False):
print("True")
else:
print("False")如果(True)
執行A
否則
執行B
執行結果
執行結果
if-elif-else
if True:
print("A")
elif True:
print("B")
else:
print("C")if(False):
print("A")
elif(True):
print("B")
else:
print("C")如果True
執行A
否則如果True
執行B
否則
執行C
執行結果
執行結果


Comparator 比較器
| 符號 | 意思 | 比較 | 回傳 | 說明 |
|---|---|---|---|---|
| > | 大於 | x > y | True | 10大於5 是真的 |
| < | 小於 | x < y | False | 10小於5 是假的 |
| >= | 大於或等於 | x >= y | True | 10大於或等於5 是真的 |
| <= | 小於或等於 | x <= y | False | 10小於或等於5 是真的 |
| == | 等於 | x == y | False | 10等於5 是假的 |
| != | 不等於 | x != y | True | 10不等於5 是真的 |
Let: x=10 , y=5
程式碼
x=10
y=5
if(x>y):
print("x>y")
if(x<y):
print("x<y")
if(x>=y):
print("x>=y")
if(x<=y):
print("x<=y")
if(x==y):
print("x==y")
if(x!=y):
print("x!=y")x > y
x >= y
x != y
都為真,
所以會輸出
x > y、x >= y、x != y
執行結果

試試看
輸入 x、y後
判斷兩者是
x>y、x<y 還是 x=y 後輸出
範例輸入:
範例輸出:

5min

試試看
x,y = map(int,input().split())
if x == y:
print("x=y")
elif x > y :
print("x>y")
else:
print("x<y")x,y = map(int,input().split())
if x == y:
print("x=y")
if x > y :
print("x>y")
if x < y:
print("x<y")5min
Ans
多種解: 三個狀態不會同時發生
if, else, elif 都可選
and or not
Let:
T = True、F = False
| 意思 | 判斷 | 回傳 | 說明 | |
|---|---|---|---|---|
| and | 且 (兩者都需符合) | T and F | False | T F 中只有 T 是真 |
| or | 或 (僅需一者符合) | T or F | True | T F 中 T 是真 |
| not | 不 | not T | False | 不是真的 --> 假的 |
程式碼~~
T=True
F=False
if(T and F):
print("True")
else:
print("False")
if(T or F):
print("True")
else:
print("False")
if(not T):
print("True")
else:
print("False")
if(not F):
print("True")
else:
print("False")設: T = 真、F = 假
T 且 F = 假
T 或 F = 真
不 T = 假
不 F = 真
執行結果

試試看
當我輸入 x 後
幫我判斷今天是不是週末(6、7)
並輸出
範例輸入:
x 限定 1~7
範例輸出:

5min

試試看
x = int(input())
if x == 6 or x == 7:
print("是週末")
else:
print("不是週末")如果 x 等於 6 或者等於 7
輸出 是周末
否則
輸出 不是周末
Ans
5min
串列
list
宣告list
first_list = ["apple", "big", 1, 2, 3, [1,2,3]]list中的值
可以是字串
可以是數字
也可以是另一個list......
輸出list
numberlist = [1,2,3,4,5,6,7,8]
print(numberlist)
print(type(numberlist))
print(numberlist[0])
print(numberlist[4])name_list[數字]
numberlist 中的 第數字格
執行結果
格數: 0 1 2 3 4 5 6 7

輸入list
inputlist = list(map(int,input().split()))
print(inputlist)運用map輸入法分割輸入
再轉型成list

試試看
給資料:
輸入:
輸出:
numberlist = [1,2,3,4,5,6,7,8,9,10]輸出
1 3 5 7 9
2 4 6 8 10
無
5min

試試看
numberlist = [1,2,3,4,5,6,7,8,9,10]
print(numberlist[0],end=" ")
print(numberlist[2],end=" ")
print(numberlist[4],end=" ")
print(numberlist[6],end=" ")
print(numberlist[8])
print(numberlist[1],end=" ")
print(numberlist[3],end=" ")
print(numberlist[5],end=" ")
print(numberlist[7],end=" ")
print(numberlist[9],end=" ")格子 0 對應到 numberlist 中的值 1
格子 3 對應到 numberlist 中的值 4
還記得吧~
還記得 end 怎麼用吧~~
5min
Ans
更便捷的輸出方式
numberlist = [1,2,3,4,5,6,7,8,9,10]
print(numberlist)
print(numberlist[0:5])
print(numberlist[0:5:2])
print(numberlist[-1])
print(numberlist[0:-2])從 a 格到 b 格前: [a:b]
從 a 格到 b 格前, 間格c : [a:b:c]
*從後面數過來第 a 格: [-a]
執行結果

試試看
給你這段程式:
輸入:
輸出:
numberlist = [1,2,3,4,5,6,7,8,9,10]幫我輸出
[1, 3, 5, 7, 9]
[2, 4, 6, 8, 10]
使用[a:b]
無
5min

試試看
numberlist = [1,2,3,4,5,6,7,8,9,10]
print(numberlist[::2])
print(numberlist[1::2])[ : :2]
因為沒限定初始格到結束格
所以默認從第零格到最後一格
[1: :2]
沒限定結束格
所以從第一格到最後一格
Ans
5min
增加資料
numberlist1 = [1,2,3,4,5]
print(numberlist1)
numberlist1.append(6)
print(numberlist1)numberlist2 = [1,2,3,4,5]
print(numberlist2)
numberlist2.extend([6,7,8])
print(numberlist2)numberlist3 = [1,2,3,4,5]
print(numberlist3)
numberlist3.insert(3,9)
print(numberlist3).append( a )
在尾部增加值 a
.extend([ a,b,c...... ])
在尾部增加值 a b c...
.insert( a,b )
在 a 格增加 b 值
其他往後推



移除資料
numberlist1 = [1,1,2,2,3,3,4,4,5,5]
print(numberlist1)
del numberlist1[3]
print(numberlist1)
del numberlist1[1:8:2]
print(numberlist1)numberlist2 = [1,2,3,4,5]
print(numberlist2)
numberlist2.pop()
print(numberlist2)
numberlist2.pop(2)
print(numberlist2)del name_list[數字]
刪除對應的格子
.pop( a )
刪除 a 格
如果沒放,就是刪除最後一格


移除資料
numberlist3 = [2,1,2,3,2,3]
print(numberlist3)
numberlist3.remove(2)
print(numberlist3).remove( a )
刪除最先出現的 a 值

排序資料
numberlist1 = [3,1,4,1,5,9]
print(numberlist1)
numberlist1.reverse()
print(numberlist1)numberlist2 = [3,1,4,1,5,9]
print(numberlist2)
numberlist2.sort()
print(numberlist2).reserve()
把 list 反轉
.sort()
由小到大排序


試試看
給資料:
輸入:
輸出:
numberlist = [3,1,4,1,5,9,2,6,5,4,5]無
5min

試試看
numberlist = [3,1,4,1,5,9,2,6,5,4,5]
numberlist.remove(9)
numberlist.remove(1)
numberlist.remove(1)
numberlist.sort()
numberlist.reverse()
print(numberlist)2~4行把數字刪除後
再把它由小到大排序
之後反轉
5min
Ans
元組
tuple
宣告tuple
first_tuple = (1,2,3,4,5)tuple 跟 list 差不多
不過 tuple 不能被修改
不能新增、刪除值到 tuple 中
輸出tuple
first_tuple = (1,2,3,4,5)
print(first_tuple)
print(type(first_tuple))
print(first_tuple[::2])其實
tuple 的輸出跟 list 都差不多
name_tuple[數字]
執行結果
格數: 0 1 2 3 4

字典
dict
宣告dict
first_dict = {"apple": "蘋果", "big": "大", "cat": "貓"}字典名
second_dict = {"one": 1, "two": 2, "three": 3}"apple": "蘋果"
鍵Key
值value
字典的特性是,
你可以由"key"找到他相對應的"value"
而Key是唯一且不變的
key與value可以是任何資料型態
用大括號包起來
輸出整個字典
first_dict = {"apple": "蘋果", "big": "大", "cat": "貓"}
print(first_dict)
print(type(first_dict))先宣告好變數後
用 print 輸出變數及型態
執行結果

資料型態是"dict"
first_dict = {"apple": "蘋果", "big": "大", "cat": "貓"}
second_dict = {"one": 1, "two": 2, "three": 3}
print(first_dict["apple"])
print(second_dict["three"])中括號
字典中的Key
執行結果

用鍵找值
新增資料
Englishdict = {"apple": "蘋果", "big": "大", "cat": "貓"}
Englishdict["dog"] = "狗"
Englishdict["empty"] = "空"
print(Englishdict)新增字典資料時
我們需要先有一個字典
而新增時語法為:
dictName[key] = value
執行結果

一次新增大量資料
Englishdict = {"apple": "蘋果", "big": "大", "cat": "貓"}
addedEnglish = {
"Hi": "嗨",
"Hello": "哈囉",
"Happy": "開心",
"dig": "挖",
"empty": "空"
}
Englishdict.update(addedEnglish)
print(Englishdict)語法:
dict.update(dict)

執行結果
更改資料
Wrongdict={"Hi": "你好", "Hello": "我很好"}
print(Wrongdict)
Wrongdict["Hi"] = "哈囉"
Wrongdict["Hello"] = "你好"
print(Wrongdict)更改資料與新增資料一樣都是:
dictName[key] = value
執行結果

試試看
給你這段程式:
輸入:
輸出:
numberdict = {"one": 1, "two": 2, "three": 3}
addnumber = {"six": "六", "seven": "七", "eight": "八", "nine": "九"}幫我把value都改成文字
並新增 four 四 與 five 五 到number字典中
再把 addnumber 更新到 number 字典中
最後輸出number字典
無

5min
試試看-Ans
numberdict = {"one": 1, "two": 2, "three": 3}
addnumber = {"six": "六", "seven": "七", "eight": "八", "nine": "九"}
numberdict["one"] = "一"
numberdict["two"] = "二"
numberdict["three"] = "三"
numberdict["four"] = "四"
numberdict["five"] = "五"
numberdict.update(addnumber)
print(numberdict)由 dictName[key] = value 新增並更改字典內容
再使用 dict.update(dict)
把addnumber 新增到 numberdict 中
最後輸出
刪除資料
刪除資料有兩種寫法
1: del dict_name['key']
2: dict_name.pop('key')
numberdict = {"one": 1, "two": 2, "three": 3, "four": 4}
print(numberdict)
del numberdict["four"]
print(numberdict)numberdict = {"one": 1, "two": 2, "three": 3, "four": 4}
print(numberdict)
numberdict.pop("four")
print(numberdict)執行結果


其他用法:
number_dict = {"one": 1, "two": 2, "three": 3, "four": 4}
print(f"numberdict的長度是: {len(number_dict)}")
print(f"numberdict中的key是: {number_dict.keys()}")
print(f"numberdict中的values是: {number_dict.values()}")
print(f"numberdict中的item是: {number_dict.items()}")長度: len(dict_name)
查看鍵: dict_name.keys()
查看值: dict_name.values()
查看所有元素: dict_name.items()
執行結果:

想要了解更多的話
Python 初學第九講 — 字典
集合
set
宣告set
first_set = {2,2,1,1,5,7,5,8,4,5,7}set 中不含重複的資料
輸出set
first_set = {2,2,1,1,5,7,5,8,4,5,7}
print(first_set)
print(type(first_set))set 跟 list 差蠻多的
set 沒有 "格子" 的概念
它就是一個集合
執行結果

增加資料
numberset1 = {1,2,3}
numberset1.add(0)
print(numberset1)numberset2 = {1,2,3}
numberset2.update({0,3,4,5,6,9,8,7})
print(numberset2).add( a )
增加 a 到 set 中
.update({ x })
新增 x 到 set 中
x 可以是多筆資料


移除資料
numberset1 = {1,2,3,4,5}
print(numberset1)
numberset1.remove(3)
print(numberset1).remove( a )
刪除 set 中的 a

還想學更多?
Python 基礎語法 - list、tuple、dict、for、while https://reurl.cc/WGYeRD
Python3 集合
for-while
break-continue
for迴圈
for i in 序列:
^
意思是:對於在 序列 中的 i
i : 變數
序列 : 一組數字、 list 、 set ......
for - range()
for i in range(10):
print(i)for i in range(1,10,2):
print(i)range(起始值 , 終止值 , 遞 增/減 值)
執行結果:

執行結果:

range(終止值)
只填入一個參數的精簡方法給偷懶
其餘都是這用法
預設0
預設1
試試看
範例輸入:
範例輸出:
輸入整數 x , 整數 y
輸出:
整數x 加到 整數y (不包含 整數y ) = ?
5min


試試看
x = int(input())
y = int(input())
answer = 0
for i in range(x,y):
answer += i
print(f"{x} 加到 {y} (不包含{y}) = {answer}")用 x , y 存入輸入的整數後
for i in range(x,y)
讓他起始為 x 終止為 y
再另用一個變數計算答案(answer)
5min
Ans
for - list set tuple
numberlist = [1,2,3,4,5]
for i in numberlist:
print(i)numberset = {1,2,3,4,5}
for i in numberset:
print(i)numbertuple = (1,2,3,4,5)
for i in numbertuple:
print(i)執行結果:



for - break
for i in range(10):
if(i==5):
break
print(i)break : 跳出整個迴圈 (這裡跳出for)
執行結果:

for - continue
for i in range(10):
if(i==5):
continue
print(i)continue : 跳出本次迴圈
執行結果:

試試看
範例輸入:
範例輸出:
幫我計算 x 到 y 間的奇數和
( 包含 x,y )
5min


試試看
sum_odd = 0
x,y = map(int,input().split())
for i in range(x,y+1):
if(i%2==0):
continue
sum_odd += i
print(sum_odd)當 i 是 2 的倍數時 ( i 除 2 餘數為0)
跳過當次迴圈( 不執行 sum_odd += i )
Ans
5min
while
while 條件式 :
...
條件式如果是真值就執行
偽值 Falsy - 視為 False 不執行:
False, 0, 0.0, "", [], {}, (), set(), None
真值 Truthy - 視為 True 執行:
True, -3, 0.1, " ", [0]...
while - 計算
i=0
while i < 10:
print(i)
i+=1while 會執行 10 次
直到 i 不小於10 ( False )
執行結果:

while - 無窮
i=0
while i < 10:
print(i)while 會一直執行
執行結果:

這並不是全部......
試試看
範例輸入:
100
範例輸出:
輸入正整數 N
使用 while 輸出 1 到 N 中所有的因數
5min

試試看
N = int(input())
i = 1
while i <= N:
if N % i == 0:
print(i)
i += 1當 i 可以被 N 整除時
輸出 i
Ans
5min
函式
Function
def - 定義函式
1. 無參數-執行一樣的程式碼
() 表示執行函式
def phone_number():
print("0967-676-767")
phone_number()
def - 定義函式
2. 一個參數
sometext是參數名稱
def p(sometext): # 我要更簡短的 print
print(sometext)
p("abc")在內部作為變數使用


p()沒有輸入時會發生錯誤
def - 定義函式
2. 一個參數-指定預設值 (可選參數)
def p(sometext="忘記輸入了"): # 我要更簡短的 print
print(sometext)
p("abc")
p()
def - 定義函式
3. 多個參數-對齊
依據參數位置輸入
def report(name, score):
print(f"{name}拿到了{score}分")
report("阿公", 67)
def - 定義函式
4. 多個參數-指定
def book_ticket(movie_name, ticket_type="全票", with_combo=False):
print(f"訂票成功!【電影:{movie_name}】")
print(f"票種:{ticket_type}")
if with_combo:
print("加購大份爆米花與可樂套餐!")
else:
print("無加購餐點")
print("-" * 30)
book_ticket("奧德賽")
book_ticket("名偵探柯南 高速公路的墮天使", ticket_type="學生票", with_combo=True)
book_ticket("蠟筆小新:奇奇怪怪!我的妖怪假期", with_combo=True)
return - 函式回傳值
函式執行完後,可以將結果「回傳」並且中斷給呼叫者。
def add(a, b):
return a + b
result = add(10, 20)
print(f"結果是: {result}")使用 return 後
函式會立即結束
並將後方的數值傳出去

試試看
題目:計算 BMI 函式
請寫一個函式 calc_bmi(weight, height)
- 參數:體重(kg)、身高(cm)
- 回傳:BMI 值 (體重(kg) / 身高(m)平方)
範例輸入:
範例輸出:
10min

可能會用到:
指數運算符、用空格隔開的輸入、將浮點數轉換為整數

(無條件捨去)
試試看
10min
def calc_bmi(weight, height):
height_m = height / 100
bmi_value = weight / (height_m ** 2)
return bmi_value
w, h = map(int, input().split())
result = calc_bmi(w, h)
print(f"您的 BMI 為 {int(result)}")身高轉換為公尺
試試看:實作練習 2
題目:圓形面積計算
請寫一個函式 circle_area(radius)
- 參數:半徑
- 回傳:面積 (半徑 * 半徑 * 3.14)
- 若沒輸入半徑,預設半徑為 1
範例呼叫:circle_area(10) -> 314.0
範例呼叫:circle_area() -> 3.14
5min
為什麼選Python?
優勢:
1. 具有類似英文的基本語法
2. 可以使用更少的程式碼來編寫 Python 程式
3. 可以輕鬆地將 Python 與其他常用的程式設計語言搭配使用
python -> and or
c++ -> && ||
python 輸入 : 變數 = input() 輸出: print()
c++ 輸入: 先設變數 -> cin>>~~ 輸出: cout<<~~
應用:
1. 網路爬蟲與擷取資訊
2. 分析數據、視覺化
3. 機器學習、人工智慧
4. 網站開發
5. 遊戲開發
6. 使用者介面的圖形
7. 商業應用
8. 影音應用
9. 電腦輔助設計
把數據畫成折線圖、圓餅圖......
Tkinter 函式庫,做出按鈕、文字方塊、下拉式選單......
利用程式去自動獲取網頁資訊的技術
PyGame
Django、Flask、Pyramid 、web2py、bottle.py......
強化學習、機器學習、深度學習......
企業資源管理系統
Tkinter 函式庫,做出按鈕、文字方塊、下拉式選單......
影音剪輯軟體PiTiVi
CAD 繪圖FreeCAD
Python 基礎語法
By cksh11431028
Python 基礎語法
在這場由王裕佳帶來的精彩簡報中,您將探索 Python 程式設計的基礎知識。從安裝、語法、變數宣告、輸入處理到算術運算,同時還能透過實用範例激發好奇心並提升您的寫程式技巧!
- 8