# .get() 是什麼?
# .get() 是 字典(dict) 的方法,不是串列(list)的方法。
my_dict = {"name": "Annie", "age": 20}
print(my_dict.get("name")) # ✅ "Annie"
print(my_dict.get("gender", "未提供")) # ✅ 找不到時給預設值 → "未提供"
# ❌ 串列(list)不能用 .get()
my_list = [10, 20, 30]
print(my_list.get(1)) # ❌ 錯誤:list 沒有 get() 方法
# ✅ 那要怎麼安全地取得串列的某個值?
# 你可以用條件判斷或 try-except 來安全存取:
# ✅ 方法一:加上條件判斷
index = 5
if index < len(my_list):
print(my_list[index])
else:
print("索引超出範圍")
# ✅ 方法二:用 try-except
try:
print(my_list[index])
except IndexError:
print("索引錯誤,無法取得值")
# ✅ 延伸:你可以自訂一個 get-like 函式 for list
def get_from_list(lst, index, default=None):
return lst[index] if 0 <= index < len(lst) else default
print(get_from_list(my_list, 1)) # ✅ 20
print(get_from_list(my_list, 100, "😅")) # ✅ "😅"
# 總結一下👇:
# 類型 .get() 可用嗎?
# 字典 dict ✅ 有 .get() 方法
# 串列 list ❌ 沒有 .get(),需用 if 或 try