Try   HackMD

Deep Learning EP1 - Python


要深入了解深度學習(Deep Learning,簡稱 DL),掌握 Python 語言幾乎是必不可少的。這不是因為其他編程語言不夠好,而是因為當今大多數人工智能(AI)開發工作都是用 Python 完成的。Python 的清晰、簡單是它會如此流行的原因,以下是常用的語法:

I/O

print() # 輸出 (加 "" 是字串)
input() # 輸入 (都是字串)

實際使用:

a = int(input("請輸入a: ")) # a 收到的是 int (整數)
print(a) # 打印出 a
>> 請輸入a: 3
>> 3

Variable (變數)

a = 'a'
b = 1
PI = 3.14159
c = '你好1212'
d = True
e = False

嗯? 怎麼可以沒定義 int, char, bool, string? Python 可以動態定義,讚!

運算子

# 賦值運算子
a = 1
b = 2

# 輸出各種運算結果
print(f"a + b = {a+b}")  # 加法運算子,計算 a 和 b 的和
print(f"a * b = {a*b}")  # 乘法運算子,計算 a 和 b 的乘積
print(f"a / b = {a/b}")  # 除法運算子,計算 a 除以 b 的商(結果為浮點數)
print(f"a // b = {a//b}")  # 整數除法運算子,計算 a 除以 b 的整數商
print(f"a % b = {a%b}")  # 模除運算子,計算 a 除以 b 的餘數
print(f"b ** 2 = {b**2}")  # 冪運算子,計算 b 的 2 次方
print(f"b >> a = {b>>a}")  # 右移位運算子,將 b 的二進位表示向右移動 a 位
print(f"b << a = {b<<a}")  # 左移位運算子,將 b 的二進位表示向左移動 a 位
print(f"a ^ b = {a^b}")  # 位異或運算子,對 a 和 b 的二進位表示進行異或操作
print(f"a | b = {a|b}")  # 位或運算子,對 a 和 b 的二進位表示進行或操作
print(f"a & b = {a&b}")  # 位與運算子,對 a 和 b 的二進位表示進行與操作
a + b = 3
a * b = 2
a / b = 0.5
a // b = 0
a % b = 1
b ** 2 = 4
b >> a = 1
b << a = 4
a ^ b = 3
a | b = 3
a & b = 0

條件

若真才做事,假則做別件事

a = 1
b = 2
if a == b:
  print("a==b")
elif a > b:
  print("a>b")
else:
  print("Null")
>> Null

迴圈

可以重複執行多次,有forwhile

for迴圈主要可以控制要幾次、從哪到哪。

#語法是: for i in range(開始(默認0),結尾,間隔(默認1)) for ii in range(5): print(ii)
>> 0 >> 1 >> 2 >> 3 >> 4

While 迴圈

while 迴圈會持續執行,直

到滿足某個條件為止。

i = 0
while i < 5:
    print(i)
    i += 1
>> 0
>> 1
>> 2
>> 3
>> 4

函式 (Functions)

函式是一段組織好的,可重複使用的代碼,用於執行一項特定任務。

def greet(name):
    return f"Hello, {name}!"

print(greet("Alice"))
>> Hello, Alice!

列表 (Lists)

列表是 Python 中一種用於存儲一系列項目的資料結構。

my_list = [1, 2, 3, 4, 5]
print(my_list[0])  # 輸出第一個元素
my_list.append(6)  # 添加元素到列表末尾
print(my_list)
>> 1
>> [1, 2, 3, 4, 5, 6]

字典 (Dictionaries)

字典是一種存儲鍵值對的資料結構。

my_dict = {"apple": "蘋果", "banana": "香蕉"}
print(my_dict["apple"])  # 輸出 '蘋果'
my_dict["orange"] = "橙子"  # 添加新的鍵值對
print(my_dict)
>> 蘋果
>> {'apple': '蘋果', 'banana': '香蕉', 'orange': '橙子'}

錯誤處理 (Error Handling)

處理錯誤和異常是寫穩健程式的重要部分。

try:
    # 嘗試執行一些程式碼
    x = 1 / 0
except ZeroDivisionError:
    # 如果發生除以零的錯誤,則執行此塊
    print("Cannot divide by zero")
>> Cannot divide by zero

下一章,會介紹進階用法! :)
喜歡請按 :+1: