PYTHON PROGRAMMING
- Course
- ITEC224 - PYTHON PROGRAMMING
- Department
- Information Technologies - English - Undergraduate
- Course Type
- Course
- Status
- Required
- Language
- English
- Credit
- 3
- ECTS
- 6
- T+P+L
- 3 + 0 + 0
- Course Coordinator(s)
- -
- Prerequisite
- -
- Keywords
Course Description
This course is designed to provide students with a thorough understanding of Python, a leading programming language in the tech industry. The course aims to equip students with advanced programming skills through a structured yet flexible curriculum. Students will cover core topics including python for data analysis, AI, scripting, automation, software development while engaging in hands-on projects that simulate real-world applications. The course emphasizes critical thinking, problem-solving, and coding best practices. As students progress, they will develop the ability to write efficient and effective Python code. By completion of the course, students will have gained practical experience and confidence in their programming abilities, preparing them for advanced studies or professional opportunities in the industry. Completion of the course requires a final project, which students will present in a comprehensive oral presentation and submit as a formal report.
PYTHON PROGRAMMING
Evaluation Tools (Active Term)
No evaluation items have been defined.
Course outcomes
No course outcomes have been defined yet.
Course Syllabus
| Week | Topic |
|---|---|
| Week 1 | Introduction to Python Programming |
| Week 2 | Data Analysis with Pandas and Numpy |
| Week 3 | Data Visualization with Matplotlib & Seaborn |
| Week 4 | Data Analysis with Scikit-learn (Intro to Machine Learning) |
| Week 5 | Web Development with Flask: Introduction |
| Week 6 | Web Development with Flask: Forms, Templates |
| Week 7 | Web Development with Flask: Application Structure |
| Week 8 | Automation and Scripting : File Operation, Automating Tasks, Web Scraping |
| Week 9 | Automation and Scripting : Web Scraping, Scheduling jobs |
| Week 10 | Midterm Exams |
| Week 11 | Midterm Exams |
| Week 12 | Automation and scripting: Email Automation |
| Week 13 | Project Presentation |
| Week 14 | Project Presentation |
| Week 15 | Revision |
Reference Books & Course Materials
- 01 Python for data analysis: Data wrangling with pandas, numpy, and jupyter. McKinney, W. (2022), O'Reilly Media, Inc.
- 02 Automate the boring stuff with Python, Sweigart, A. (2025).
- 03 Flask Web Development: Developing Web Applications with Python. 2018. Grinberg, M URL http://flaskbook. com.
Learning Outcomes
- L01 Demonstrate and apply coding best practices to produce clean, efficient, and well-documented Python code. SOLO 4
- L02 Apply and implement Python-based solutions to real-world problems in automation, scripting, and software development. SOLO 4
- L03 Implement and analyze data using Python-based techniques with core libraries such as NumPy, pandas, and Matplotlib. SOLO 4
- L04 Examine and describe foundational concepts in artificial intelligence using Python libraries such as scikit-learn or TensorFlow. SOLO 3
- L05 Design and develop modular Python programs by synthesizing functions, classes, and appropriate data structures SOLO 5
- L06 Apply and execute Python tools to automate tasks and workflows, including file handling, scheduling, and command-line operations. SOLO 3.5
- L07 Analyze and review Python code using testing techniques and performance evaluation tools to identify and resolve errors. SOLO 4
- L08 Perform and conduct collaborative work within team-based programming projects that simulate professional development environments.. SOLO 3.5
- L09 Explain and summarize the results of programming projects, relating findings to project objectives, through structured oral presentations and written reports SOLO 3.5
Program Outcomes
- P01 Create a user interface in a contemporary object-oriented language to allow users to access business data
- P02 Identify and analyze user needs and take them into account in the selection, creation, integration, evaluation and administration of computing-based systems
- P03 Analyze common business functions and identify, design, and develop appropriate information technology solutions
- P04 Design and develop software solutions for contemporary business environments by employing appropriate problem-solving strategies
- P05 Configure and administer database server to support contemporary business environments.
- P06 Administer or mange a relational database for a small to medium size company
- P07 Be able to effectively integrate IT-based solutions into the user environment
- P08 Understand professional, ethical, legal, security and social issues and responsibilities
- P09 Be able to apply effective communication skills consistent with the professional environment
- P10 Be able to apply effective collaboration skills in teamwork consistent with the professional environment
Po-Lo Matrix
| LO | P01 | P02 | P03 | P04 | P05 | P06 | P07 | P08 | P09 | P10 | Average |
|---|---|---|---|---|---|---|---|---|---|---|---|
| L01 | 2 | 1 | 2 | 4 | 1 | 1 | 2 | 2 | 1 | 1 | 1.7 |
| L02 | 3 | 3 | 4 | 4 | 1 | 1 | 4 | 1 | 1 | 1 | 2.3 |
| L03 | 2 | 2 | 3 | 2 | 2 | 2 | 2 | 1 | 1 | 1 | 1.8 |
| L04 | 1 | 1 | 2 | 0 | 2 | 2 | 2 | 1 | 1 | 1 | 1.3 |
| L05 | 4 | 3 | 4 | 5 | 1 | 1 | 3 | 1 | 1 | 1 | 2.4 |
| L06 | 2 | 2 | 3 | 3 | 2 | 2 | 3 | 2 | 2 | 2 | 2.3 |
| L07 | 2 | 1 | 2 | 3 | 1 | 1 | 2 | 2 | 2 | 1 | 1.7 |
| L08 | 4 | 2 | 2 | 2 | 3 | 3 | 2 | 3 | 4 | 5 | 3 |
| L09 | 3 | 2 | 2 | 1 | 2 | 2 | 2 | 3 | 5 | 4 | 2.6 |