PYTHON PROGRAMMING
- Course
- COMP224 - PYTHON PROGRAMMING
- Department
- Computer Programming - English - Associate
- 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 fundamental programming skills through a structured yet flexible curriculum. Students will cover core topics including variables, data types, control structures, and functions, 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 software development. 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
- Apply and execute Python tools to automate tasks and workflows, including file handling, scheduling, and command-line operations. SOLO 3.5
- Perform and conduct collaborative work within team-based programming projects that simulate professional development environments SOLO 3.5
- Explain and summarize the results of programming projects, relating findings to project objectives, through structured oral presentations and written reports SOLO 3.5
- 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
- L07 Analyze and review Python code using testing techniques and performance evaluation tools to identify and resolve errors. SOLO 4
Program Outcomes
- P01 Be able to apply knowledge of programming
- P02 Be able to design software systems of varying complexity
- P03 Be able to identify, categorize, and develop solutions for computer orientated challenges.
- P04 Be able to demonstrate autonomy and responsibility in managing computer programming projects
- P05 Be able to follow the state of the arts concepts in computer technology
- P06 Be able to design, implement, and evaluate a computational system to meet desired needs within realistic constraints.
- P07 Be able to use appropriate techniques, skills, and tools necessary for computing practice.
- P08 Be able to apply appropriate technologies and techniques for the collection and analysis of organizational and environmental data to facilitate evidence-based decision making
- 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 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| 3 | 2 | 3 | 2 | 2 | 3 | 5 | 5 | 1 | 1 | 2.7 | |
| 1 | 2 | 2 | 4 | 1 | 2 | 2 | 1 | 2 | 5 | 2.2 | |
| 1 | 1 | 1 | 3 | 1 | 1 | 1 | 2 | 3 | 2 | 1.6 | |
| L01 | 5 | 4 | 3 | 3 | 1 | 4 | 4 | 0 | 0 | 0 | 2.4 |
| L02 | 5 | 3 | 5 | 3 | 2 | 4 | 4 | 2 | 1 | 1 | 3 |
| L03 | 3 | 2 | 3 | 1 | 2 | 2 | 4 | 5 | 1 | 1 | 2.4 |
| L04 | 2 | 2 | 3 | 1 | 5 | 3 | 3 | 4 | 1 | 1 | 2.5 |
| L05 | 5 | 5 | 4 | 3 | 2 | 5 | 4 | 1 | 1 | 1 | 3.1 |
| L07 | 4 | 3 | 4 | 3 | 1 | 5 | 5 | 1 | 1 | 1 | 2.8 |