CP & CA(二)W1|Python 進階(一)必考 NOTE

更新 發佈閱讀 10 分鐘

============================================================

[0] 本週一句話主線

------------------------------------------------------------

把程式寫成「可重用工具」:

Input/Output 模板 + 函式封裝 + 資料結構 + 例外處理

考試看到題目 -> 直接套模板。

------------------------------------------------------------

[1] 必考核心觀念(W1 高頻)

------------------------------------------------------------

(1.1) 型別與轉型(超常考)

- input() 永遠是 str

- 轉型:int(x), float(x)

- 除法:/ (浮點) 整除:// (整數)

- 浮點比較不要用 ==,改用:

abs(a - b) < 1e-9

(1.2) 資料結構必會

- list : append, extend, sort, slicing

- tuple : 不可變(安全資料包)

- dict : get, items, setdefault(查找/統計)

- set : 去重、交集、差集

------------------------------------------------------------

[2] 輸入處理模板庫(必背)

------------------------------------------------------------

(2.1) 單行多個數

a, b, c = map(int, input().split())

(2.2) 多行固定筆數

n = int(input())

arr = [int(input()) for _ in range(n)]

(2.3) 讀到 EOF(大量資料最常用)

import sys

data = sys.stdin.read().strip().split()

nums = list(map(float, data))

------------------------------------------------------------

[3] 解題結構模板(W1 核心)

------------------------------------------------------------

主程式只管 I/O,計算放函式(可重用、可測試)

def solve(data):

return result

def main():

import sys

data = sys.stdin.read().strip().split()

ans = solve(data)

print(ans)

if __name__ == "__main__":

main()

------------------------------------------------------------

[4] 例外處理(進階題常考)

------------------------------------------------------------

常見例外:

- ValueError : 轉型失敗

- ZeroDivisionError: 除以 0

- KeyError : dict 查不到 key(可用 get 避免)

範例:

try:

x = float(input())

y = 1 / x

except ValueError:

print("Input is not a number")

except ZeroDivisionError:

print("Division by zero")

------------------------------------------------------------

[5] W1 必收「小工具函式」(可重用)

------------------------------------------------------------

(5.1) 平均 / 最小 / 最大

def stats(arr):

n = len(arr)

if n == 0:

return 0.0, None, None

mean = sum(arr) / n

return mean, min(arr), max(arr)

(5.2) dict 計數(統計題必用)

def freq_count(items):

freq = {}

for x in items:

freq[x] = freq.get(x, 0) + 1

return freq

(5.3) 字串處理(split / strip / join)

s = " a,b,c "

parts = s.strip().split(",")

out = "-".join(parts)

------------------------------------------------------------

[6] W1 範例(可直接改作業/考題)

------------------------------------------------------------

(6.1) 平均與最大(含空資料保護)

def solve(nums):

if not nums:

return "EMPTY"

mean = sum(nums) / len(nums)

mx = max(nums)

return f"mean={mean:.4f}, max={mx:.4f}"

def main():

import sys

data = sys.stdin.read().strip().split()

nums = list(map(float, data)) if data else []

print(solve(nums))

if __name__ == "__main__":

main()

(6.2) 出現最多元素(Top-1)

def most_common(items):

freq = {}

for x in items:

freq[x] = freq.get(x, 0) + 1

best_item, best_cnt = None, -1

for k, v in freq.items():

if v > best_cnt:

best_item, best_cnt = k, v

return best_item, best_cnt

def main():

items = input().strip().split()

item, cnt = most_common(items)

print(item, cnt)

if __name__ == "__main__":

main()

------------------------------------------------------------

[7] 易錯點(扣分熱區)

------------------------------------------------------------

[ ] 忘記 input() 是 str -> 沒轉型

[ ] append vs extend 混用

[ ] freq[key] 查不到就炸 -> 改用 get

[ ] 浮點誤差:0.1 + 0.2 != 0.3

[ ] while 忘記更新條件 -> 無限迴圈

[ ] 函式忘記 return -> 變 None

------------------------------------------------------------

[8] 考前 10 分鐘速讀清單(必背 10 條)

------------------------------------------------------------

1) map(int, input().split())

2) slicing: a[i:j:k]

3) dict count: freq[x] = freq.get(x,0)+1

4) try/except ValueError, ZeroDivisionError

5) main() 管 I/O, solve() 管計算

6) 大量輸入: sys.stdin.read()

7) 浮點比較: abs(a-b) < 1e-9

8) enumerate()

9) set() 去重

10) f-string: f"{x:.4f}"

留言
avatar-img
「2060AIHANS 애한스|頂大修課紀錄研究室」
0會員
118內容數
「2060AIHANS 애한스|修課紀錄研究室」專門紀錄我在大學修課的學習軌跡:每堂課重點推導、作業解題、實驗量測、除錯筆記與延伸閱讀,皆以工程化方式整理成可複用模板。目標是讓知識可追溯、能力可量化,並把課堂收穫轉化為可長期複利的技術資產。
你可能也想看
Thumbnail
債券投資,不只是高資產族群的遊戲 在傳統的投資觀念中,海外債券(Overseas Bonds)常被貼上「高資產族群專屬」的標籤。過去動輒 1 萬甚至 10 萬美元的最低申購門檻,讓許多想尋求穩定配息的小資族望而卻步。 然而,在股市波動劇烈的環境下,尋求穩定的美元現金流與被動收入成為許多投資人
Thumbnail
債券投資,不只是高資產族群的遊戲 在傳統的投資觀念中,海外債券(Overseas Bonds)常被貼上「高資產族群專屬」的標籤。過去動輒 1 萬甚至 10 萬美元的最低申購門檻,讓許多想尋求穩定配息的小資族望而卻步。 然而,在股市波動劇烈的環境下,尋求穩定的美元現金流與被動收入成為許多投資人
Thumbnail
透過川普的近期債券交易揭露,探討債券作為資產配置中「穩定磐石」的重要性。文章分析降息對債券的潛在影響,以及股神巴菲特的操作策略。並介紹玉山證券「小額債」平臺,如何讓小資族也能低門檻參與海外債券市場,實現「低門檻、低波動、固定收益」的務實投資方式。
Thumbnail
透過川普的近期債券交易揭露,探討債券作為資產配置中「穩定磐石」的重要性。文章分析降息對債券的潛在影響,以及股神巴菲特的操作策略。並介紹玉山證券「小額債」平臺,如何讓小資族也能低門檻參與海外債券市場,實現「低門檻、低波動、固定收益」的務實投資方式。
Thumbnail
解析「債券」如何成為資產配置中的穩定錨,提供低風險高回報的投資選項。 藉由玉山證券的低門檻債券服務,投資者可輕鬆入手,平衡風險並穩定財務。
Thumbnail
解析「債券」如何成為資產配置中的穩定錨,提供低風險高回報的投資選項。 藉由玉山證券的低門檻債券服務,投資者可輕鬆入手,平衡風險並穩定財務。
Thumbnail
相較於波動較大的股票,債券能提供固定現金流,而玉山證券推出的小額債,更以1000 美元的低門檻,讓學生與新手也能參與全球優質企業債投資。玉山E-Trader平台即時報價、條件式篩選與清楚的交易流程等特色,大幅降低投資難度,對於希望分散風險、建立穩定現金流的人來說,玉山小額債是一個值得嘗試的理財起點。
Thumbnail
相較於波動較大的股票,債券能提供固定現金流,而玉山證券推出的小額債,更以1000 美元的低門檻,讓學生與新手也能參與全球優質企業債投資。玉山E-Trader平台即時報價、條件式篩選與清楚的交易流程等特色,大幅降低投資難度,對於希望分散風險、建立穩定現金流的人來說,玉山小額債是一個值得嘗試的理財起點。
Thumbnail
【開箱分享】Lig.翎光界|小資必收的高CP值眼鏡推薦 👓 最近入手了副 Lig.翎光界 的眼鏡,真的超出我的期待! 因為我本身是小資族,買東西最在意的就是 CP值,既要好看又要實用,還不能太貴。 這次體驗之後,覺得非常值得跟大家分享,尤其想找 小資眼鏡推薦 的朋友一定要看下去!
Thumbnail
【開箱分享】Lig.翎光界|小資必收的高CP值眼鏡推薦 👓 最近入手了副 Lig.翎光界 的眼鏡,真的超出我的期待! 因為我本身是小資族,買東西最在意的就是 CP值,既要好看又要實用,還不能太貴。 這次體驗之後,覺得非常值得跟大家分享,尤其想找 小資眼鏡推薦 的朋友一定要看下去!
Thumbnail
分享這間臺中北區的住宿推薦,價格實惠且飯店設施齊全,地點交通便利,靠近天津年貨大街和文心中清捷運站。住宿有雙床房型及雙人加大床房型可選,且提供早餐。飯店內設施完備,房內乾淨且浴室設有浴缸。早餐為現點現做,有葷素選擇及水果飲料,CP值高且早餐好吃,住宿交通方便,值得推薦。
Thumbnail
分享這間臺中北區的住宿推薦,價格實惠且飯店設施齊全,地點交通便利,靠近天津年貨大街和文心中清捷運站。住宿有雙床房型及雙人加大床房型可選,且提供早餐。飯店內設施完備,房內乾淨且浴室設有浴缸。早餐為現點現做,有葷素選擇及水果飲料,CP值高且早餐好吃,住宿交通方便,值得推薦。
Thumbnail
第一篇聊到了 SPC 的運作原理是基於隨機資料與常態分佈的理論基礎;第二篇談到了實際應用的工具「管制圖」,認識了代表客戶的規格線、品管內部控制的管制界線、ABC 區、八大監控法則還有選擇管制圖的分類。實際應用上還需要回答一個關鍵問題「到底做的好不好?」,有沒有量化的指標來幫助我們判斷製程能力好壞?
Thumbnail
第一篇聊到了 SPC 的運作原理是基於隨機資料與常態分佈的理論基礎;第二篇談到了實際應用的工具「管制圖」,認識了代表客戶的規格線、品管內部控制的管制界線、ABC 區、八大監控法則還有選擇管制圖的分類。實際應用上還需要回答一個關鍵問題「到底做的好不好?」,有沒有量化的指標來幫助我們判斷製程能力好壞?
Thumbnail
跟三重蘆洲地區的朋友們推薦一家鐵板燒 緣味鐵板燒 位於徐匯廣場 B2(徐匯中學捷運站共構大樓) 我覺得大家一定要來支持緣味鐵板燒 因為緣味是屬於比較精緻又價錢合宜的鐵板燒 東西好吃不用說 這裡我分享一些照片 看了就知道 蔥蛋 (好吃鬆軟又營養) 鐵板豆腐 (營養軟嫩入味調味恰到好處) 好下飯 松阪豬
Thumbnail
跟三重蘆洲地區的朋友們推薦一家鐵板燒 緣味鐵板燒 位於徐匯廣場 B2(徐匯中學捷運站共構大樓) 我覺得大家一定要來支持緣味鐵板燒 因為緣味是屬於比較精緻又價錢合宜的鐵板燒 東西好吃不用說 這裡我分享一些照片 看了就知道 蔥蛋 (好吃鬆軟又營養) 鐵板豆腐 (營養軟嫩入味調味恰到好處) 好下飯 松阪豬
Thumbnail
以下店家都提供免費編髮、包包、置物櫃,大家可以依照自己的需求去選擇適合自己的韓服店。最後有韓服少女租借經驗分享,與租借時間建議,希望大家都可以找到適合的韓服店!
Thumbnail
以下店家都提供免費編髮、包包、置物櫃,大家可以依照自己的需求去選擇適合自己的韓服店。最後有韓服少女租借經驗分享,與租借時間建議,希望大家都可以找到適合的韓服店!
Thumbnail
在婚姻的智慧裡,我有提到我們說好每個星期都要到外面吃一次飯,重溫約會的感覺! 昨天是小週末,所以我們又出門啦! 🤭 這次我們選的是位於楠梓健身工廠正對面的赤頂熟成牛排,印象中這個地方已經換過好幾次餐廳,以前好像是火鍋店?! 感覺楠梓的餐廳真的瞬息萬變啊!
Thumbnail
在婚姻的智慧裡,我有提到我們說好每個星期都要到外面吃一次飯,重溫約會的感覺! 昨天是小週末,所以我們又出門啦! 🤭 這次我們選的是位於楠梓健身工廠正對面的赤頂熟成牛排,印象中這個地方已經換過好幾次餐廳,以前好像是火鍋店?! 感覺楠梓的餐廳真的瞬息萬變啊!
Thumbnail
巴里島擁有成千上萬的住宿選擇, 要怎麼樣挑選出裝潢美、氣氛佳、位置方便的好酒店確實讓人難以決定.我們綜合了一些國外旅遊網站的旅客評論,整理出了11間最受歡迎的精品酒店,住一晚不到美金$30,物超所值, 假掰美照拍不停,又可以讓你住的開心喔!
Thumbnail
巴里島擁有成千上萬的住宿選擇, 要怎麼樣挑選出裝潢美、氣氛佳、位置方便的好酒店確實讓人難以決定.我們綜合了一些國外旅遊網站的旅客評論,整理出了11間最受歡迎的精品酒店,住一晚不到美金$30,物超所值, 假掰美照拍不停,又可以讓你住的開心喔!
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News