Prerequisite Courses

None

Required Text(s)

Introduction to Programming Using Python, Y. Daniel Liang (html, html). 

Text1

Think Python: How to Think Like a Computer Scientist, Allen Downey, (html).
Interactive Edition (html). 

Text1

Recomended Text(s)

- Introduction to Computation and Programming Using Python, John V. Guttag (html). 
- Starting Out with Python, Global Edition, 4/E, Tony Gaddis, Pearson, 2019 (html).
- Introduction to Programming in Python: An Interdisciplinary Approach,  Robert Sedgewick, Kevin Wayne, Robert Dondero, Pearson, 2015. (html)
- Fundamentals of Programming Python, Richard L. Halterman, 2019 (PDF)
- Python Practice Book, Anand Chitipothu , (html)
- Python Programming (html)
- A Practical Introduction to Python Programming (hmtl)
- w3schools Python Tutorial (html)
- tutorialspoint Learn Python (html)
- LearnPython.org (html)
- javaTPoint Python Tutorial (html)
- Programiz - Learn Python Programming (html)

Meeting Times:

- Section I: Monday 9:00 - 12:00,  Location: CZ_12
- Section II: Monday 13:30 - 16:30,  Location: CZ_211

Labs:

- Lab Section I : Tuesday 11:00-13:00, TA: Asmma Samy Mohamed Mahmoud
- Lab Section II : Wednesday 9:00-11:00, TA: Khaled Algammal
- Lab Section III: Wednesday 11:00-13:00, TA: Khaled Algammal
- Lab Section IV : Friday 9:00-11:00, TA: Asmma Samy Mohamed Mahmoud


Grading:

Evaluation Tool Weight in %
Programming Assignments    12
Labs (*) 10
In-term Exams
- 2 Quizes
- 1 Midterm
38
Final 40

(*) %70 attendance to laboratories is required, otherwise students will fail from the course. Laboratory assignments should be submitted in order to get laboratory grade.


Tentative  Course Outline:

WEEK TOPIC(S)
1 Introduction to Computers, Programming, and Python
2 Elementary Programming
3 Mathematical Functions, Strings, and Objects
4 Selections
5 Loops
6 Functions
7 Objects and Classes
8 Exam Week
9 More on Strings and Special Methods, GUI Programming Using Tkinter I
10 GUI Programming Using Tkinter II
11 Lists, Multidimensional Lists, Tuples, Sets, and Dictionaries
12 Inheritance and Polymorphism
13 Files and Exception Handling, Recursion
14 Review

Course Syllabus in PDF ()