2110101 Introduction to programming: Python

First semester 2020  (Aug-Nov)

official syllabus

This is on-line course.  Students learn from pre-class videos, participating in real-time video teaching, practice on automated Grader system, and do weekly homework (which is a substantial project in programming).  The course offers tutorial and discussion via on-line chat (almost 24x7) with a team of teaching assistants. Weekly assessment is issued with immediate result.  One sit-in final exam will be administrated.  The course is delivered by lecturers' team.  Each lecturer takes care of a group of students (around 70).

The information on this site is the part of my own teaching.  I post weekly edited version of  the lecture and some additional help on doing the complex homework (all in Thai).  Code is executable in colab (colab notebook).

Summary of Python topics

Lecture

Chapter 1: How to learn, using tools, easy programming: print()  video (how to learntools

Chapter 2: Data types, variables, input, operators, expression  video  code

Chapter 3: Basic string and list  video  code

Chapter 4: Selection, if, if-else, if-elseif, flowchart  video  code

Chapter 5: Repetition: for, while, break, flowchart  video  code

Chapter 6: List methods, list processing  video  code

Chapter 7: Function  video  

Chapter 8: String methods, string and list processing  video  code

Chapter 9: Basic dict (dictionary, hash)  video 

Chapter 10: Nested loop  video (loop, examples)    code(loop, examples)

Chapter 11: Tuple/set/dict  video  code

Chapter 12: Numpy  video  code

Chapter 13: Class and object  video  code

Homework

1)  Ascii Art  (use character print)

2) Parametric Equation  (write an equation then plot, using mathplotlib)

3) Treasure Hunt  (write a part of a game, navigate through a maze)

4) Three Questions (write a game of question and answers, decision tree)

5) Solving TSP using Genetic algorithm (compose a complex program from library of components)

6) 8-Puzzles  (write a solver for of 8-puzzle, state-space search)

7) COVID data analytic (download COVID data and perform data analytic)  video for fast start

8) Web scraping (write a web crawler and extract a specific information)  video for fast start

9) Permutation (compute a number of operations on permutation)  video explain difficult concept (ordercycle)

10) Tic-Tac-Toc (write a part of game of Tic-Tac-Toe)

11) Tweeter data analytic (get data from twitter, perform some data analytic)  video for fast start

last update 19 Dec 2020