教學大綱 Syllabus

科目名稱:程式設計(一)

Course Name: Computer Programing(Ⅰ)

修別:必

Type of Credit: Required

3.0

學分數

Credit(s)

55

預收人數

Number of Students

課程資料Course Details

課程簡介Course Description

本課程為Python基礎課程,適合未曾有過或僅有少許程式經驗的同學修習。

我們將從本課程撰寫程式的地方 - Goolge Colaboratory 開始介紹,Colab 是 Google 所提供,擁有免費計算資源的雲端平台,接著逐步講授各種語法與使用時機,並提供各種範例以加深同學對於語法的理解。

於學期末,同學需提出一個能透過 Python 解決的問題作為期末專案,並將結果以各種方式呈現於期末報告中。

(09/13 更新)我們將將使用 Google Meet 進行第一週課程,網址如下:https://meet.google.com/tmd-ryhf-puy

希望加簽者,請務必參與前三週課程以了解更多細節。

 

This course is an introductory level of Python programming language.

We start this course by introducing Google Colaboratory, a platform which runs on the cloud and offers free computing resources, will be introduced as your code playground in this course.

Then, basic Python syntaxes will be introduced. To provide a better understanding, some examples or assignments will be given.

Students need to find an issue to address and solve it using Python as your term-project. A final report about this issue and how you solve it should be submitted at the end of the semester. 

(09/13 Update) In the first week of class, we will Google Meet, link: https://meet.google.com/tmd-ryhf-puy

For more detail about signing up this course, please join the first three weeks. 

核心能力分析圖 Core Competence Analysis Chart

能力項目說明


    課程目標與學習成效Course Objectives & Learning Outcomes

    本課程將介紹 Python 程式語言,在修習完該課程後,我們預期學生擁有透過 Python 解決實際問題的基本技能。

    Python programing language will be introduced in this course. Students are expected to have the skill to solve practical issue using Python.

    每周課程進度與作業要求 Course Schedule & Requirements

    週次

    Week

    課程主題

    Topic

    課程內容與指定閱讀

    Content and Reading Assignment

    教學活動與作業

    Teaching Activities and Homework

    學習投入時間Student workload expectation

    課堂講授In-class Hours

    課程前後

    Outside- of-class

    Hours

    1

    Course Overview

    Course logistic

    Understand what is Python

    3

    3

    2

    Google Colab and command line

    Practice using Colab

    Understand how to use  Google Colab

    3

    2

    3

    Basic Types in Python I

    Talk about numeric type Python object

    Practice operations between numeric-type objects

    3

    2

    4

    Basic Types in Python II

    Talk about non-numeric python object

    Practice operations on list, tuple, set and dict type object

    3

    2

    5

    Functions

    Talk about self-defined function

    Define your own Python function

    3

    2

    6

    Control flow

    if-else, for-loop and while-loop

    Find a recursive problem and solve it in different ways

    3

    3

    7

    Strings and File I

    Process files using str object

    Load and process your file

    3

    2.5

    8

    Strings and File II

    Process files using str object

    Load, process and save a file as a function

    3

    2.5

    9

    Nested Structure

    Talk about nested structures

    Practice some exercises with nested structures

    3

    3

    10

    Packages and Modules

    Talk about how to use packages to simplify your work

    Repeat your past assignments with the help of packages

    3

    3

    11

    Dict and Nested Structure

    Talk about dictionary type objects

    Practice some examples with dict objects

    3

    3

    12

    Matrix in Python: Numpy

    Talk about Numpy package

    Practice some Numpy exercises

    3

    3

    13

    Statsistics in Python: Scipy

    Talk about Scipy package

    Practice some Scipy exercises

    3

    4

    14

    Algebra in Python: Sympy

    Talk about Sympy package

    Practice some Sympy exercises

    3

    4

    15

    Spreadsheet in Python: Pandas

    Talk about Pandas package

    Practice some Pandas exercises

    3

    3

    16

    Project Presentation

    Present your final project

    Give feedback to presenters

    3

    6

    17

    Project Presentation

    Present your final project

    Give feedback to presenters

    3

    6

    18

    Project Presentation

    Present your final project

    Give feedback to presenters

    3

    6

     

    授課方式Teaching Approach

    70%

    講述 Lecture

    10%

    討論 Discussion

    10%

    小組活動 Group activity

    10%

    數位學習 E-learning

    0%

    其他: Others:

    評量工具與策略、評分標準成效Evaluation Criteria

    平時作業 60%

    期末專案 40%

     

    Assignment 60%

    Final project 40%

    指定/參考書目Textbook & References

    Lecture will be based on the slides.

    參考書目References:

    1. 少年Py的大冒險:成為Python數據分析達人的第一門課(附範例光碟) 作者: 蔡炎龍、季佳琪、陳先灝,全華圖書
    2. 政治大學磨課師課程:成為Python數據分析達人的第一課 https://ctld.video.nccu.edu.tw/km/1399
    3. Think Python 2nd Edition by Allen B. Downey
    4. Python Cookbook: Recipes for Mastering Python 3 (3rd Edition) by David Beazley, Brian K. Jones
    5. Fluent Python: Clear, Concise, and Effective Programming (1st Edition) by Luciano Ramalho
    6. Introduction to Machine Learning with Python: A Guide for Data Scientists (1st Edition) by Andreas C. Müller, Sarah Guido

    已申請之圖書館指定參考書目 圖書館指定參考書查詢 |相關處理要點

    維護智慧財產權,務必使用正版書籍。 Respect Copyright.

    課程相關連結Course Related Links

    Link for Remote Learning: https://meet.google.com/dxh-xssv-xnu

    課程附件Course Attachments

    課程進行中,使用智慧型手機、平板等隨身設備 To Use Smart Devices During the Class

    Yes

    列印