---
# System prepended metadata

title: Machine Learning Application 9/22

---

# Python程式設計

## 變數
- set 和 list
  - `set` 是一種無序的可變集合，其中不允許重複元素。
    ```python
    my_set = {1, 2, 3}
    ```

  - `list` 是有序的可變列表，可以包含重複元素。
    ```python
    my_list = [1, 2, 2, 3]
    ```

- dict (字典)
  - `dict` 是一種鍵-值對的映射結構。
    ```python
    my_dict = {"name": "John", "age": 30}
    ```

## 運算
Python支援各種數學和邏輯運算，包括加法、減法、乘法、除法等。你可以使用運算符號如 `+`、`-`、`*`、`/` 來執行這些運算。

```python
result = 10 + 5  # 加法
result = 20 - 7  # 減法
result = 5 * 4  # 乘法
result = 20 / 3  # 除法
```


## 輸出
- 你可以使用 print() 函式來輸出文字和變數的內容。
```python
print("Hello, World!")
```
## 函式
- 在Python中，你可以定義自己的函式來執行特定的任務。函式通常以 def 關鍵字定義。
```python
def greet(name):
    print(f"Hello, {name}!")

greet("Alice")
```

## 迴圈
- Python提供不同種類的迴圈，包括 for 和 while 迴圈。這些迴圈允許你多次執行相同的程式碼塊。
```python
for i in range(5):
    print(i)

while condition:
    # 做一些事情
```


## 全域變數VS區域變數
- 在Python中，變數的作用範圍分為全域變數（global variables）和區域變數（local variables）。全域變數在整個程式中都可以訪問，而區域變數只能在它們被定義的函式或程式區域內訪問。

## class
- Python支援物件導向編程，你可以使用 class 來定義自己的類別。類別是用來創建物件的藍圖，並包含屬性和方法。
```python
class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def say_hello(self):
        print(f"Hello, my name is {self.name} and I am {self.age} years old.")
    # 做一些事情
```

## import
- 你可以使用 import 關鍵字來引入外部模組或庫，以擴展Python的功能。
```python
import math
print(math.sqrt(16))  # 使用math模組的平方根函式
```

## 讀檔
- Python提供各種方式來讀取檔案，其中一個是使用 open() 函式。另外，如果你需要讀取Excel文件，可以使用 openpyxl 库中的 load_workbook() 函式。
```python
from openpyxl import load_workbook

workbook = load_workbook('example.xlsx')
worksheet = workbook.active

for row in worksheet.iter_rows(values_only=True):
    print(row)
```

## try: except:
- Python允許你使用 try 和 except 塊來處理異常。這可以幫助你處理可能引發錯誤的程式碼，並提供一個容錯的機會。
```python
try:
    result = 10 / 0
except ZeroDivisionError:
    print("除以零錯誤發生")
```

