---
title: "06 - Python 速查表"
type: note
specialty: Programming
tags: [python, 06-速查表]
---

# 06 - Python 速查表

← [[05-常用模組]] | 回到 → [[00-Index]]

---

## 基本語法

```python
# 變數與型別
x = 10; s = "hello"; f = 3.14; b = True
type(x)          # <class 'int'>
isinstance(x, int)  # True

# 輸入輸出
print("hello", end="")    # 不換行
name = input("名字：")    # 等待輸入
```

---

## 資料型態速查

```python
# List
lst = [1, 2, 3]
lst.append(4)        # 加到末尾
lst.pop()            # 刪除末尾
lst.insert(0, 0)     # 插入到索引 0
lst.sort()           # 排序（in-place）
sorted(lst)          # 回傳新 list
len(lst)             # 長度
lst[::-1]            # 反轉

# Dict
d = {"a": 1}
d.get("b", 0)        # 取值，預設 0
d.keys()             # 所有 key
d.values()           # 所有 value
d.items()            # (key, value) 對
"a" in d             # 檢查 key 是否存在

# String
s = "hello world"
s.split(" ")         # ['hello', 'world']
" ".join(["a","b"])  # 'a b'
s.strip()            # 去除首尾空白
s.replace("l","L")   # 替換
s.startswith("h")    # True
f"{s!r}"             # repr 格式
```

---

## 控制流程速查

```python
# if
x = 5
result = "big" if x > 3 else "small"

# for
[x**2 for x in range(10) if x % 2 == 0]   # list comprehension
{k: v for k, v in d.items()}               # dict comprehension

# 常用迭代工具
for i, val in enumerate(lst):    # 同時取 index
for a, b in zip(lst1, lst2):    # 同時遍歷兩個
```

---

## 函式速查

```python
def func(a, b=10, *args, **kwargs):
    return a + b

lambda x: x ** 2               # 匿名函式
map(func, lst)                  # 對每個元素套用函式
filter(lambda x: x>0, lst)     # 篩選
```

---

## 檔案操作

```python
# 讀檔
with open("file.txt", "r", encoding="utf-8") as f:
    content = f.read()         # 全部讀入
    lines = f.readlines()      # 按行讀入 list

# 寫檔
with open("file.txt", "w", encoding="utf-8") as f:
    f.write("hello\n")

# 附加寫入
with open("file.txt", "a", encoding="utf-8") as f:
    f.write("more content\n")
```

---

## 例外處理

```python
try:
    result = 10 / 0
except ZeroDivisionError as e:
    print(f"錯誤：{e}")
except (TypeError, ValueError):
    print("型別或值錯誤")
finally:
    print("一定會執行")

# 主動拋出例外
raise ValueError("這是錯誤訊息")
```

---

## 實用內建函式

```python
abs(-5)           # 5
max([1,2,3])      # 3
min([1,2,3])      # 1
sum([1,2,3])      # 6
sorted([3,1,2])   # [1,2,3]
reversed([1,2,3]) # 反轉迭代器
zip([1,2],[3,4])  # [(1,3),(2,4)]
enumerate([a,b])  # [(0,a),(1,b)]
any([F,T,F])      # True（任一為真）
all([T,T,T])      # True（全部為真）
```

---

← [[05-常用模組]] | 回到 → [[00-Index]]
