---
title : Python 入門教學
description: Python 入門教學
---
## 基本概念
此處會說明基本的Python用法
## 變數
變數,可想成儲存資料的容器,對於數學來說可用代數X、Y、Z理解。
### 宣告變數
使用變數前需要先宣告:
```python=
name = value
```
其中,name 為變數名稱,value為變數值。
:::warning
請注意:
``=``為宣告時使用
`==` 為比較時使用
:::
### 變數規則
變數名稱之首不能為數字,符號只能接受底線`_`,大小寫視為不同,可以有中文字,盡量為有意義的單字組合。
#### 保留字
宣告變數時不能使用 Python 的保留字

#### 習慣命名規則
習慣以英文單字做命名,每個單字首大寫,或者以`_`分隔
- userName
- UserName
- user_name
## 資料型態
| 型態 | 名稱 |
|:-|:-|
| int | 整數 |
| float | 浮點數 |
| str | 字串 |
| bool | 布林值|
```python=
number = 5 #為整數
string = "hello" #為字串 用" "或者''包起來的就是字串
string_2 = 'hello' #仍是字串
decimal = 0.24 #浮點數
flag = True #布林值 True 或 False
```
<!-- 我們可以使用`type()`來查看這個變數的資料型態
```python=
print(type(number)) #Output <class 'int'>
``` -->
### 轉換型態
使用`型態()`來轉換資料型態
```python=
num = "93" #原始為string
num = int(num) #轉換為int
pi = 3.14 #浮點數
pi = int(b) #只取整數 pi = 3
```
## 運算子
| 算術運算子 | 意義 | 比較運算子 | 意義 | 邏輯運算子 | 意義 |
|:-|:-|:-|:-|:-|:-|
| + | 加 | == | 相等 |and | 且 |
| - | 減 | != | 不相等 |or | 或 |
| * | 乘 | > | 大於 |not | 否定 |
| / | 除 | >= | 大於等於 | | |
| // | 整數除 | < | 小於 | | |
| % | 取餘數 | <= | 小於等於 | | |
| ** | 次方 || | | |
:::warning
再次注意:
``=``為宣告時使用
`==` 為比較時使用
:::
```python=
a = 10+2 #12
b = 2**3 #8
c = 1/3 #0.3333333333
d = 1//3 #1
e = 8%3 #2
e = 1+2 == 3 #True
f = 1+2 == "3" #False 因為兩者型態不同
g = Fasle == (not True)#True
a += 1 #a = a + 1
a -= 1 #a= a - 1 其他同理
```
## 輸入及輸出
輸入和輸出的函式為`input()`和`print()`
### 輸入
> `input()` 回傳的資料型態為`str`
```python=
s = input("提示字串:")
#提示字串為當輸入時你想要顯示什麼內容,可不填
```
### 輸出
>`print()`輸出訊息
```python=
print("Helloworld") #Helloworld
print("Hello"+"world")#Helloworld
# 當兩邊都為字串時可以相加
print("Hello","world",sep = '+')#Hello+world
# 以+分隔,不寫預設為空格
print("Helloworld",end = 'owo') #Helloworldowo
# 以owo做結尾,不寫預設為換行字元 \n
# 輸出小數
a = 3.123456789
print(f'{a:.2f}') #3.12
# 輸出至小數後第二位
# f為格式化字串 於{}裡放變數
```
進階輸入及輸出處理未來會補充...
## 判斷式
在Python中,以`縮排`也就是`tab`來區分
```python=
只需處理符合條件時
if 條件句:
符合條件時執行
符合和不符合都須處理時
if 條件句:
符合條件時執行
else:
不符合條件時執行
多重條件時
if 條件1:
符合條件1時執行
elif 條件2:
符合條件2時執行
.
.
.
.
elif 條件n:
符合條件n時執行
else:
都不符合時執行
```
:::warning
多重條件時會執行條件先成立區塊
例如:即使符合條件1及條件2也只會執行條件1的程式碼
:::
**範例:**
```python=
score = int(input())
if score > 100 or score < 0:
print("輸入錯誤")
else:
if score > 60:
print("及格")
elif score == 60:
print("剛好及格")
else:
print("不及格")
```
## 迴圈
迴圈,顧名思義就是重複執行的意思
### For 迴圈
```python=
for name in range (start,end,step):
# Code
```
:::info
`name` 為變數
`start`為變數起始值,不填預設為`0`
`end`為變數結束值,遞增時小於此數才會執行,反之遞減時需大於此數
`step`為每次執行完後變數的變化量。預設為`1`
:::
**範例:**
```python=
for i in range(1,20,3):
print(i,end=" ")
# Output: 1 4 7 10 13 16 19
```
因為輸出`19`後`19+3`會大於等於20,所以就會跳出迴圈
```python=
for i in range(5,1,-1):
print(i,end=" ")
#Output: 5 4 3 2
```
因為輸出`2`後`2-1`會小於等於1,所以就會跳出迴圈
### While 迴圈
```python=
while 條件:
#Code
#無窮迴圈
while True:
#code
if 條件:#停止條件
break
```
:::info
當條件成立時才會執行
:::
**範例:**
```python=
i=1
while i<20:
print(i,end=" ")
i = i+3
# Output: 1 4 7 10 13 16 19
```
### 迴圈控制
#### Break
跳出當前迴圈
```python=
for i in range(5):
if i == 2:
break
print(i,end=" ")
# Output: 0 1
```
#### Continue
略過continue後的程式碼,直接執行下一次迴圈
```python=
for i in range(5):
if i == 2:
continue
print(i,end=" ")
# Output: 0 1 3 4
```