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)
- Python for Computational Science and Engineering (html, html)

Meeting Times:

- Tuesday 13:30 - 16:30 
- Location: Online with Microsoft Teams Platfrom


Labs:

- Time :  Wednesday, 17:30-19:30
- Lab Section I   : TA:  Cansu Sena Yat
- Lab Section II  : TA: Beyza Gül
- Lab Section III : TA: Battal Yenilmezel
- Lab Section IV : TA: Reem Karroum
- Lab Sevtion V  : TA: Erhan Saatcioğlu
- Lab Section VI : TA: İlayda Kavascık


Grading:

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

(*)   Laboratory assignments should be submitted in order to get laboratory grade.
(**) You may be asked to enter an oral examination after each examination or at the end of semester. In that case, your final grade will be determined by oral examination.


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 ()