Python Programming

  1. 課程名稱: Python 程式設計 (通識)
  2. 課號: 993052
  3. Time: Tuesday 14:10-17:00
  4. Place: H-103 [voip:94334493]
  5. TA:
  6. Students enrolled in this class: 80
  7. Instructor: Dr. Quincy Wu (吳坤熹老師) solomon
  8. Textbook: Al Sweigart, "Invent Your Own Computer Games with Python", Fourth Edition, No Starch Press, 2016. ISBN:978-1593277956
  9. References
    1. Mark Lutz, "Learning Python", O'Reilly Media; 5th edition (July 3, 2013). 1600 pages. ISBN: 978-1449355739.
    2. Zed A. Shaw, "Learn Python The Hard Way", Shavian Publishing, 2012.
    3. Python v3.5.0 On-line Documentation
    4. Al Sweigart, "Making Games with Python & Pygame", CreateSpace, 2012.
    5. Michael Dawson, "Python Programming for the Absolute Beginner", Course Technology PTR; 2nd Edition (November 8, 2005). (NCNU NetLibrary)
    6. Python Functions @ TutorialPoint
    7. Python Tutorial @ BogoToBogo
    8. Automate the Boring Stuff with Python
    9. R. C. T. Lee, "為高中生寫的Python程式設計教科書".
    10. Harold Abelson and Gerald Jay Sussman, " Structure and Interpretation of Computer Programs", 2nd Edition.
  10. Course webpage: http://COURSE.ipv6.club.tw/Python/1081/

Programming Environment

Tips for Python 3

FAQ

  1. Q: Difference between Python 2 and Python 3.
    A: For example,
    1. print vs. print()
    2. 5/2
    3. long int
    4. Unicode
    5. urllib2
    6. need to invoke random.seed()

Code Writing

  1. Draw a flowchart or write a pseudo code to illustrate the basic idea
  2. Prepare a test case so that you will verify when your code is complete.
  3. Keyin your code and check it is correct or not.
  4. If the outcome differs from what you expect, ask yourself why.

How will your programming assignments be evaluated

課程評量方式

Syllabus

  1. Chapter 1: The Interactive Shell
    Chapter 2: Writing Programs
  2. Chapter 3: Guess the Number
  3. Chapter 4: A Joke-Telling Program
  4. Chapter 5: Dragon Realm
  5. Chapter 6: Using the Debugger
  6. Chapter 7: Designing Hangman with Flowcharts
    Chapter 8: Writing the Hangman Code
  7. Chapter 9 Extending Hangman
  8. Chapter 10: Tic-Tac-Toe

Lab

  1. Kids Coding
  2. Google Code University
  3. Flowchart Drawing:
  4. Dia
  5. Dia for Windows
  6. An Introduction to Programming in Go
  7. Build Web Application with Golang
  8. Sikuli Script - automate and test GUI.
  9. Selenium - Web Browser Automation
  10. Sample Code for Chapter 4

Exercise

  1. What day is January 1?
    Ref: UVA 12019
  2. Calendar
  3. 190 - Circle Through Three Points
  4. 9x9 Multiplication Table
  5. Christmas Tree
  6. Prime Number
  7. Factorization
  8. Greatest Common Divisor
  9. Sorting
  10. Matrix Multiplication
  11. Card Shuffling
  12. Develop a nano editor with Python + curses
  13. 8x16 font
  14. 暗棋:將士象車馬包卒
  15. 蓊鬱錦簇科技二館 - 有蓊鬱的樹木圍繞著科技二館,使建築物融入大自然的美景中,更具生命力。
  16. 光鮮亮麗的山中城堡 - 雲群波濤洶湧、山脈層巒疊嶂及蓊鬱樹木圍繞,暨南大學校園無疑是美麗的歐式莊園。
  17. CPE一星題目及ITSA歷屆考題
  18. Python Card Game

Reading

  1. PEP 8 -- Style Guide for Python Code
  2. Intel Labs Creating Robots of the Future
  3. 10 Ways Not to Be a Jerk Online
  4. 15 Windows Utilities You Can't Live Without
  5. IBM at 100: From typewriters to the cloud
  6. Future of the car (智慧汽車, 51 min) 447.18 F996
  7. Standford CS101
  8. Google's Fact-Checking Bots Build Vast Knowledge Bank
  9. Zero Robotics Competition
  10. A4WP's wireless charging spec triples available power for laptops, tablets
  11. How WiGig Works
  12. Isaac Asimov: How Do People Get New Ideas?
  13. How to create a bootable Windows USB drive
  14. Gartner's Top 10 Predictions For IT Organizations In 2017 And Beyond
  15. 千人狂歡 最受歡迎的程式課
  16. Python Tutorial on Guru99
  17. Python Is Easy.com