This course covers all basic knowledge needed for programming in python. The course designed based on the assumption that students want to work in the software industry, but it's also useful for academic purposes.

Course Calendar & Materials

All available resources for this course will be added to the following table.

SessionDateSubjectsSlidesCodesHomeworkSolutions
1July 5, 2018Python Philosophy, What is Python, Python 2.x vs Python 3.x, Python Installation and Setup, Why Python, Python Shell, Python Basic Syntax, Variables, Basic Data Types, Operators, Type Conversion, Truth Value Testing, Sequences, Sequence Operators, List Comprehension, String Formatting, Tuples, PyCharm Integrated Development Environment py_basics_v2.html-1, 2, 3-
2July 12, 2018Control Structures, Loops, Sets, Dictionaries, Functionspy_dtypes.html1, 2, 3, 4, 51, 2, 31, 2, 3
3July 26, 2018Problem Solving, Modules Concepts, time Module, random Module, math Module, dir() Function, Packages in python, Working with Python Package Manager and VirtualEnvpy_modules.html, py_libs.html1, 2, 3, 41, 2, 31-1, 1-2, 2, 3
4August 2, 2018Writing a real-world program using some well-known high-level python packages-1, 2, 3, 4, 5, 61, 2, 31, 2, 3
5August 9, 2018Problem Solving, Object Oriented Concepts, Class and Object in Python, Instance Objects, Method Objects, Class and Instance Variables, Random Remarks, Inheritance, Multiple Inheritance, Odds and Ends, Special Methods, Underscore in Pythonpy_oop.html1, 2, 3, 41-
6August 16, 2018Regular Expressions, Exceptions Handling, Version Control Systemspy_errors.html, py_regex.html, git-version-control-system---
7September 6, 2018Some Basic Terms in Software Engineering, Cohesion and Coupling Levelscoh_coup.html---

Additional Resources

Useful Links

What's the next?

  • Advanced Programming in Python
  • Use Python to build web applications with Django
  • Web Scraping in Python