Course Description

This course introduces fundamental programming concepts in the Python language and related environment.
Fundamental concepts include overview of computer systems, Python environment setup, Python language
overview, command line interface, numbers, string formatting, sequences, dictionaries and sets, control flow,
exception, file, function, recursion, object orientation, inheritance, polymorphism, and modules. The
programming environment will be primarily text-based in Unix environment, although graphical user
interface
(IDLE) and web-based (Jupyter) will also be demonstrated.


Textbooks

- None required, but the instructor is making available an e-book based on the slides and bilingual captions.

References

- 洪維恩,《Python 教學手冊》,ISBN 9789863126881, 出版社:旗標科技股份有限公司
- Paul Deitel, Harvey Deitel, Intro to Python for Computer Science and Data Science: Learning to Program
with AI, Big Data and the Cloud, Global Edition, Pearson Education Limited, 2022. ISBN 10: 1-292-36490-4;
ISBN-13: 978-1-292-36490-2.
- Python website, www.python.org

Teaching Method

- 2 hours of recorded lecture (Mandarin with English captions) quiz every other week.


Syllabus



Week 1 - introduction, environment setup
Week 2 - tour of Python
Week 3 - basic types, command-line application
Week 4 - command-line application (cont'd), strings
Week 5 - collections: sequence (list, tuple), set, dict
Week 6 - control constructs: if, while, for
Week 7 - exceptions, files
Week 8 - functions
Week 9 - recursion, functional programming
Week 10 - object-oriented programming part 1: class, method
Week 11 - object-oriented programming part 2: inheritance, operator overloading
Week 12 - generators, iterators
Week 13 - standard library part 1: data types, itertools
Week 14 - standard library part 2: regular expressions, Tkinter


Evaluation

30% - assignments
30% - quizzes
40% - final exam

Course website

https://eeclass.nthu.edu.tw/course/info/18557