Python程式設計

113-1 開課異動
  • 流水號

    67204

  • 課號

    Data5006

  • 課程識別碼

    946 U0060

  • 班次 02
  • 3 學分
  • A6

    無授課對象

      A6
    • 無授課對象

  • 林澤佑
  • 二 6, 7, 8
  • 新403

  • 3 類登記

  • 修課總人數 60 人

    本校 60 人

  • 無領域專長

  • 中文授課
  • NTU COOL
  • 核心能力與課程規劃關聯圖
  • 備註
    限非電資學院學生選修。需自備電腦實作。。A6:數學數位與量化分析
  • 本校選課狀況

    載入中
  • 課程概述
    Python是近年來被廣泛使用在各種領域中的程式語言,其明確、優雅、簡潔的語法結構及程式碼的可讀性,更被許多人視為學程式語言的第一選擇。 本課程將從撰寫Python的環境建置開始,並講授各種語法的結構與使用時機。課程進度上,我們將逐一介紹 Python 中各種基本知識,並同時安排各種情境的練習,讓同學在解決假想問題中來累積撰寫 Python 程式的語法以及技巧。 我們將依照下面順序介紹課程內容: 1. 簡介 Python及本課程主要使用的撰寫平台 Colab 2. 講授 Python基本變數型態、語法結構以及一些我覺得重要的進階課題 3. 探索 Python 中最熱門的數個套件 4. 專題報告:選擇一個問題,介紹如何使用 Python 解決並透過各種方式呈現 本課程的最後,同學們將挑選一個題目進行期末的小組專案報告,從介紹自己遇到並想解決的問題開始,接著分享如何透過 Python 解決,最後將結果透過各種視覺化的方式呈現。
  • 課程目標
    Python 作為近年來最流行的程式語言之一,可應用於各種領域,如資料科學、人工智慧、計算社會網絡等等。本課程將從 Python 環境的建置開始,逐步教授各種語法的結構與使用時機,並安排實際案例的練習,以輔助修課學生累積撰寫 Python 程式的技巧與經驗。同時,透過期末專案報告,讓修課學生選擇一個自己感興趣的問題,並介紹如何使用 Python 來解決,鞏固所學知識。本課程旨在讓同學能在未來遇到問題時,適當地使用 Python 程式語言來解決,並給予個人想法與建議的機會,以達成「自他共榮」的學習目標。
  • 課程要求
    本課程建議具以下特點的人士修習: 1. 害怕寫程式。 2. 想寫程式但是不知該從何開始。 3. 有想打造的小應用/個人專案,但總是沒有時間來完成,或是想要一個呈現的舞台。 本課程強烈不建議以下類型的人士修習: 1. 有任何程式經驗:本課程的教學風格與傳統程式設計課程有落差,若您有任何程式語言經驗,在學期中開始將有機會感受到學習上的不悅與負面感受。 2. 不擅社交者:本課程評分項目包含小組期末專案,不接受個人單打獨鬥。 3. 想輕鬆pass或拿A+、卻不願投入足夠心力者:想要什麼就要付出對應的努力。
  • 預期每週課後學習時數
    finite
  • Office Hour
  • 指定閱讀
    待補
  • 參考書目
    1. Fluent Python: Clear, Concise, and Effective Programming (1st Edition) by Luciano Ramalho 2. Introduction to Machine Learning with Python: A Guide for Data Scientists (1st Edition) by Andreas C. Muller, Sarah Guido 3. 少年Py的大冒險:成為Python數據分析達人的第一門課 by 蔡炎龍, 季佳琪, 陳先灝, 全華圖書
  • 評量方式
    10%

    點名

    a) 至少點名三次,每週點名次數可能超過一次。 b) 本課程僅接受課程開始前請假,除經核可之原因外,不接受事後請假。 c) 請假請務必透過學校系統申請,除心理健康假、生理假外,其餘請假類別需附上證明。 d) 本課程第12至16週為期末考試期間,僅接受特定類別之請假。

    70%

    作業

    約 10-12 次作業,包含程式作業與線上測驗

    20%

    小組專案

    a) 期末專案以小組為單位進行,每組人數限制於課堂上公告,不接受單打獨鬥。 b) 未能於規定時間內,在學期中進行分組專案事宜者,學期成績會以 F 計之。

  • 針對學生困難提供學生調整方式
    調整方式說明
    上課形式

    以錄影輔助

  • 課程進度
    9/03第 1 週我是誰:講師介紹、Python 簡介和 Colab 基本設定
    9/10第 2 週我會做什麼:你的第一支 Python 程式
    9/17第 3 週No class (線上影片)我在做什麼:Python中的基本物件型態(type)
    9/24第 4 週我還能做什麼:Python中的容器型物件(type):串列(list)、集合(set) 缺什麼自己來:自定義函式(Function)
    10/01第 5 週流程控制:if-else, for-迴圈, while-迴圈
    10/08第 6 週文字在手,希望無窮:檔案讀取與字串(str)的處理與輸出
    10/15第 7 週疊床架屋:巢狀結構(Nested Structure)
    10/22第 8 週一些看起來像是向量和矩陣的酷東西:NumPy
    10/29第 9 週還有看起來像是表格的酷東西:Pandas
    11/05第 10 週看圖說故事:資料視覺化
    11/12第 11 週意外和明天哪一個先來:例外處理
    11/19第 12 週邀請演講
    11/26第 13 週期末報告準備週
    12/03第 14 週期末報告
    12/10第 15 週期末報告
    12/17第 16 週期末報告