Lecturer: Hossein Hajiabolhassan
The Webpage of the Course: Fundamental of Computer and Programming with Python
Data Science Center, Shahid Beheshti University
This is an Introduction to Computer Programming. By the end of this course, you should be comfortable programming in Python, understand how good style is critical, and be familiar with core computer science topics like algorithms and complexity. Topics include functions, iteration, recursion, strings, and function calls.
- Think Python: How to Think Like a Computer Scientist, Second Edition, by Allen B. Downey (free PDF book)
- How to Think Like a Computer Scientist by Brad Miller and David Ranum
- Python for Everybody by Charles R. Severance (free PDF book)
- Practical Programming (2nd edition): An Introduction to Computer Science Using Python 3 by Paul Gries, Jennifer Campbell, and Jason Montojo, 2013.
- The Python Tutorial (available from the Python website)
- Python (Faster Data Science Education by Kaggle) by Colin Morris
You can learn python via the following websites:
- SoloLearn (A great website for getting started with coding. It offers easy to follow lessons, interspersed with quizzes to help you retain what you are learning).
- Google Developer Python Tutorial (highly recommended as a way to master python in just a few hours!)
If you want to solve interesting problems with Python, then we recommend to solve the problems of Project Euler!
Anaconda Distribution: With over 6 million users, the open source Anaconda Distribution is the fastest and easiest way to do Python and R data science and machine learning on Linux, Windows, and Mac OS X. It's the industry standard for developing, testing, and training on a single machine.
Saturday and Monday 08:00-09:30 AM, Main Computer Lab
Assumes basic high school mathematics (no calculus) but no programming experience.
- Homework – 10%
- Midterm – 40%
- Endterm – 50%
I’ll be having office hours for this course on Saturday 10:00 AM–12:00 AM. If this isn’t convenient, email me at hhaji@sbu.ac.ir or talk to me after class.