Faculty of Computer Science
Course Title: Python Programming from Basic to Advance
Code: Course
Coordinating Faculty/
Computer Science
Department:
Credits: 4 Credits in a Week
Pre-requisites : No
Lecturer Name and Contact: Sayed Mortaza Kazemi
[email protected]
+93 (0) 795474969
General Course Information
This course will cover the key concepts and medium to high level of coding, practices and techniques of
Python programming language which is the most trending language governing any kinds of programming
market.
COURSE OBECTIVES
At the end of this course the student will be able to do CLI and GUI programming. The students will have
enough review on Bascis of Programming, Object, oreinted Programming, Multithreading, exception
Handling, GUI, event listener and database connectivity. This course will increase the logical/practical
understanding level of students towards Application Development.
COURSE Learning Outcome
Read and understand python-based software code of medium-to-high complexity.
Use standard and third party python's APIs when writing applications.
To provide better data structutre to best mangement of data
Understand the basic principles of creating python applications with graphical user interface
(GUI).
Understand the basic approaches to the design of software applications.
Provide applications with no or less failure or bugs
Capablity of creating High Performance software system
Provide software integration
Apply the abovementioned points to design, implement, appropriately document and test a python
application of medium complexity.
LEARNING REFERECNCES
Learning Python (5th edition) (Text Book)
Python Cookbook, 3rd Edition Recipes for Mastering Python 3 by David Beazley, Brian K. Jones
Head First Python by Paul Barry
Luciano Ramalho - Fluent Python-O'Reilly Media, Inc. (2016)
Fluent Python Clear, Concise, and Effective Programming by Luciano Ramalho
W3Schools Website
Geeksforgeeks.org
Study tonight website (www.studytonight.com )
TEACHING METHODS
Lecture:
Oral presntation focuses on explaining topics, ideas and theoris
Experimental Techniques:
Case studiess
Computer Based practices:
SIMULATIONS
8.COURSE SCHEDULE / CONTENTS
Week Topics for Discussion Book Suggested Topic Outcomes
No. Chapter Activity
#
1 Lecture 1: Introduction to Python Chapter 1 Introduction of Undrestand the
the students, basics of the
1.1 Python History Summarizing python Language
1.2 Features of Python
1.3 How to install Python
1.4 Python IDE
2 Lecture 2: First Python Program Chapter 2 Practical class To undrestand
work, case different operators
2.1 Variables studies to use in Python
2.2 Python Operators
2.3 Arithemetic Operator
2.4 Comparison Operator
2.5 Assignment Operator
2.6 Bitwise Operator
2.7 Membership Operator
2.8 Identity Operator
3 Lecture 3: Data Structures Chapter 7 Class Activity, To provide better
Case Study data structutre to
3.1 List Assignment 1 best mangement
3.2 Dictionary of data
3.3 Touples
3.4 Arrays
4 Lecture 4: Control Statements Chapter Case study, Improve command
12 Class Activity on conditional
4.1 If Statement structures of a
4.2 If Else Statement program
4.3 Break & Continue
Statement
4.4 For Loop
4.5 While Loop
4.6 Home Assignment
4.7 String
4.8 Number
5 Lecture 5: Python File processing Chapter 9 Case Study, Implement the
5.1 File Operation Assignment 02 intraction of the
5.2 File Reading program with
5.3 File Writing different file
5.4 Appending File systems.
6 Lecture 6. Functions in Python Chapter Lecture, Undrestand the
16 Summarizing, concept of
6.1 Why to use Functions Class Activity dividing a class
6.2 def statement to different
6.3 Function calls
functinal parts
6.4 Pass By Value
6.5 Pass by reference
7 Lecture 7: OOP in Python Chapter Practical Better
7.1 Why Use Classes? 26 Implementation implementation of
7.2 Attribute Inheritance Search , Case Study inheritance to
7.3 Classes and Instances make efficient
programs
7.4 Method Calls
7.5 6.5Coding Class Trees
7.6 Operator Overloading
7.7 OOOP Is About Code Reuse
8 Lecture 8. Handling the datasets and Online Case study, Understand the
Visualization Source pre-post basic principles
testing, of creating
8.1 How to read CSV data Assignment 03 Python
8.2 Store the data into touples applications with
or lists graphical user
8.3 Plot the data into graphs interface (GUI).
8.4 data manipulation
9 Lecture 9: Python Modules Chapter Case study, To implement the
22 Summarizing, polymorphism of
9.1 What is modules program and
9.2 Create Modules reuse the features
9.3 Use Modules
9.4 Module Variables
10 Lecture 10: Multithreading in Python Chapter Lab work, To provide
20 Student applications with
10.1 start a new Thread Projects high performance
10.2 The Threading Module
10.3 Synchronizing Threads
10.4 Multithreading
11 Lecture 11. Python and Data Science Online Class Activitiy Provide different
11.1 Indtroduction to Data Sources on case study GUI actions to the
science of an components, with
application, higher complexity
11.2 Analysing data using Python
Assignment 03
11.3 Visulaizing data with Python
11.4 Machine Learning with
Python
12 Lecture 12. PyQT (1) Online Case study, Understand the
12.1 PyQT Application Structure Sources creating basic principles
12.2 PyQT buttons practical GUI of creating
12.3 Button Functions with PyQT Application, Python
12.4 PyQT Menubar Project applications with
Assignment
12.5 PyQT Toolbar graphical user
interface (GUI).
13 Lecture 13: PyQT (2) Online Case study, Understand the
Sources creating basic principles
12.6 Pop up Message PyQT practical GUI of creating
12.7 PyQT Check box Application, Python
12.8 PyQT Progress bar example Project Work applications with
12.9 PyQT Dropdown button and graphical user
interface (GUI).
14 Lecture 14: Python PyQT (3) Online Practical Students will be
Source Implemetation able to provide
12.1 PyQT Font widget software
12.2 PyQT Color picker widget integeration,
12.3 PyQT Text Editor Improving the
Presentation skills
12.4 PyQT open files to edit
12.5 PyQT file saving
15 Lecture 15. GUI with TKinter Online Class Activity, Providing students
12.6 Window in TKinter Source Project the ability to crate
12.7 Styling GUI using Tkinter Assesments interactive
12.8 Pop-Up Message Window applications
12.9 Exchange Choice Option
16 Lecture 16: Working with databases Online Practical class To provide
source work, case software
16.1 MySQL with Python studies, pre- integration with
16.2 Creating Databases post testing, GUI application of
16.3 Insert Data into database Project Python. Enhance
Presentation the students' soft
16.4 Deleting tables
Skills
Attendance:
Your regular and punctual attendance at lectures and seminars is expected in this course.
University regulations indicate that if students attend less than 65% of scheduled classes they
may be refused from final assessment.
Academaic Administrator Signature..........................................................