LECTURE PLAN
Subject: Python Programming Paper Code: FYCYS 301 (T)
Stream: B.Sc Cyber Security Year & Sem: 2nd Year, 1st SEM
Credits: 3T + 2 P Session: Odd Semester, 2024-25
Faculty: Prof. SAYAN MAJUMDER
………………………………………………………………………………………………………
A. Course Type: CC1
I. Objective: The course offers first-hand learning experience to 2nd year UG students in solving
general and complex problems closely matched real life scenarios through the lens of a
programming language. The basic offering of this course as follows:
Understanding Basic of Python Programming Language
Understanding code organization
Building problem-solving skills
Learning programming concepts
Writing efficient code
Preparing for future courses
II. Prerequisites: Programming for Problem Solving using C
III. Add-ons: Understanding latest of Python IDLE (3.7) standards.
IV. Target Audience: 2nd Year 1st Semester Students
B. Course Outcome (CO)
Sl. Course Outcome (CO)
1 Explain the basic concepts of Python
No.
2 Explain the different conditions and iterations of Python
3 Explain the concept of recursion, string, dictionary, list and tuples using
Python
4 Explain the concept of class and object.
Sayan Majumder 2024-25 Odd Semester FYCYS 301 Page 1
C. Course-Module Mapping
THEORY- FYCYS 301
CO Modules Questions %age
CO1 M1, M2 20
CO2 M2, M3 20
CO3 M2, M3 30
CO4 M3, M4 30
D. Program Outcomes
Program Outcomes (POs) Level
PO1 Apply the knowledge of algorithmic principles, and computing
fundamentals in the modeling and design of computer-based 2
systems of varying complexity.
PO2 Able to critically analyze, categorize, formulate and solve the
problems that emerge in the field of computer science. 2
PO3 Logical reasoning and experiences in Programming.
3
PO4 Algorithm Development and Application Development to detect Cyber 3
Vulnerabilities
PO5 Use contemporary techniques, skills and tools necessary for 3
integrated solutions.
PO6 Able to identify the best algorithm to solve a computational task, 3
and write solutions using appropriate programming languages.
PO7 Function effectively as a member or leader on multidisciplinary 2
teams to accomplish a common objective.
PO8 Able to communicate effectively with diverse types of audiences 2
and also able to prepare and present technical documents to
different groups.
PO9 Able to understand and learn the latest technologies developed in 2
the area of Cyber Security
PO10 Ability to resolve new Cyber Threats and Progress in Research 3
Area.
Sayan Majumder 2024-25 Odd Semester FYCYS 301 Page 2
E. Program Educational Objectives
Program Educational Objectives (PEOs) Level
PEO1 Students will acquire new ideas, problem-solving & programming
skills in the diverse domains of Information Technology and its 2
applications.
PEO2 Students will be able to develop specialized skills by undergoing
extensive practical sessions, industry-oriented projects, and internships to
prepare them as competent Cyber Security professionals. 2
PEO3 Students will be able to develop and realize practical applications of cyber
3
security.
PEO4 Students will develop effective communication skills & develop an
2
attitude that will help them to lead the same group and pass on their
learning to their peers and subordinates in the group.
PEO5 Students will have a holistic understanding of risk management,
3
network security, security operations.
F. CO PO Mapping
Course Articulation Matrix (CAM)
CO PO1 PO2 PO3 PO4 PO5 PO6 PO7 PO8 PO9 PO10
FYCYS301.1 2 1 3 - 1 2 - - - -
FYCYS301.2 2 3 3 2 2 3 - - - -
FYCYS301.3 3 3 3 2 3 3 - 1 - -
FYCYS301.4 3 2 3 3 2 3 1 2 2 2
CO_avg 2.5 2.3 3.0 1.8 2.0 2.8 1.0 1.0 1.0 1.0
Strength of correlation between CO-PO: 3-High, 2-Moderate, 1-Low
% of students attaining 60%
Score
marks
COA Level >= 40 1
>= 50 2
>= 60 3
Sayan Majumder 2024-25 Odd Semester FYCYS 301 Page 3
G. Syllabus
Module I: Introduction to Python(12L)
1. Introduction to Python
2. Python variables, expressions, statements
3. Variables, 2.2 Keywords, 2.3 Operators & operands, 2.4 Expressions, 2.5 Statements,
4. 2.6 Order of operations, 2.7 String operations, 2.8 Comments, 2.9 Keyboard input, 2.10
Example programs
5. Functions
Type conversion function, 3.2 Math functions, 3.3 Composition of functions,
3.4 Defining own function, parameters, arguments, 3.5 Importing functions, 3.6Example
programs
Module II: Conditions & Iterations(8L)
Conditions
Modulus operator, 1.2 Boolean expression, 1.3 Logical operators, 1.4 if, if-else, if- elif-else,
1.5 Nested conditions, 1.6 Example programs
Iteration
while, 2.2 for, 2.3 break, 2.4 continue, 2.5 Nested loop, 2.6 Example programs
Module III: Recursion, Strings, List, Dictionaries, Tuples(10L)
Recursion
Python recursion, 1.2 Examples of recursive functions, 1.3 Recursion error,
1.4 Advantages & disadvantages of recursion
Strings
Accessing values in string, 2.2 Updating strings, 2.3 Slicing strings, 2.4 String methods –
upper(), find(), lower(), capitalize(), count(), join(), len(),
isalnum(), isalpha(), isdigit(), islower(), isnumeric(), isspace(), isupper() max(), min(),
replace(), split(), 2.5 Example programs
List
Introduction, 3.2 Traversal, 3.3 Operations, 3.4 Slice, 3.5 Methods, 3.6 Delete element, 3.7
Difference between lists and strings, 3.8 Example
program
Sayan Majumder 2024-25 Odd Semester FYCYS 301 Page 4
Dictionaries
Introduction, 4.2 Brief idea of dictionaries & lists 5 Tuples (1L)
5.1 Introduction, 5.2 Brief idea of lists & tuples, 5.3 Brief idea of dictionaries & tuples
Module IV: Classes& Objects(10L)
Classes & Objects
Creating class, 1.2 Instance objects, 1.3 Accessing attributes, 1.4 Built in class attributes, 1.5
destroying objects, 1.6 Inheritance, 1.7
Methodoverriding, 1.8 Overloading methods, 1.9 Overloading operators, 1.10 Data hiding,
1.11 Example program
H. Lesson Plan
Module 1 Day wise Lecture Sub Topics
Defining Python Language with properties
Day 1: 1L
Introduction to Python
Fundamentals of Python Programming
Day 2: 1L
Concept of Python Variables
Day 3: 1L
Concept of Python Variables
Python variables, expressions, Concept of Python Expressions
Day 4: 1L
statements
Day 5: 1L Concept of Python Expressions
Day 6: 1L Concept of Python Statements
Day 7: 1L Python Variables and Keywords
Variables, Keywords, Python Operators and Operands
Operators & operands,
Day 8: 1L Introduction to Python Expression
Expressions, Statements,
An Overview of Python Statements
Order of operations, Day 9: 1L Order of operations,
String operations, String operations
Comments, Keyboard
input, Example, programs Day 10: 1L Comments, Keyboard
input, Example, programs
Sayan Majumder 2024-25 Odd Semester FYCYS 301 Page 5
Functions Day 11: 1L Type conversion function, Math functions,
Type conversion function, Composition of functions
Math functions, Composition
of functions, Defining own
function, parameters,
arguments, Importing
functions, Example programs
Day 12: 1L Defining own function, parameters, arguments,
Importing functions, Example programs
Module 2 Sub Topics
Day 13: 1L Modulus operator
Modulus operator, Boolean Day 14: 1L Boolean expression, Logical operators
expression, Logical operators,
if, if-else, if- elif-else Day 15: 1L if, if-else
Day 16: 1L if- elif-else
Day 17: 1L Nested conditions
Nested conditions, Example Day 18: 1L Example programs Set1
programs
Day 19: 1L Example programs Set2
Day 20: 1L Example programs Set3
Module 3 Lecture Sub Topics
Day 21: 1L Recursion
Python recursion, Examples of recursive functions,
Day 22: 1L Recursion error, Advantages & disadvantages of
recursion
Day 23:1L Accessing values in string, Updating strings, Slicing
strings
Day 24: 1L String methods – upper(), find(), lower(),
capitalize(), count(), join(), len(),
isalnum()
Recursion, Strings, List,
Dictionaries, Tuples Day 25: 1L isalpha(), isdigit(), islower(), isnumeric(), isspace(),
isupper() max(), min(), replace(), split(), Example
program
Day 26: 1L Introduction, Traversal, Operations, Slice, Methods,
Delete element
Day 27: 1L Difference between lists and strings, Example
program
Day 28: 1L Introduction, Brief idea of dictionaries & lists 5
Tuples
Sayan Majumder 2024-25 Odd Semester FYCYS 301 Page 6
Day 29: 1L Concept of Precedence and Associativity
Day 30: 1L Introduction, Brief idea of lists & tuples, Brief idea
of dictionaries & tuples
Module 4 Lecture Sub Topics
Day 31: 1L Creating class
Day 32: 1L Instance objects
Day 33:1L Accessing attributes,
Day 34: 1L Built in class attributes,
Day 35: 1L destroying objects,
Classes& Objects
Day 36: 1L Inheritance
Day 37: 1L Methodoverriding,
Day 38: 1L Overloading methods,
Day 39: 1L Overloading operators, 1.10 Data hiding
Day 40: 1L Example program
Total 40Hrs.
University Recommended Text Books & Reference Books
Text Books
1. Learn Python The Hard Way, Zed A. Shaw, ADDISON-WESLEY
Introduction to Computing & Problem Solving With PYTHON, Jeeva Jose, Khanna Publishing House
(AICTE Recommended Textbook)
2. Introduction To Python Programming, Venkatesh, Nagaraju Y, Khanna Publishing House (AICTE
Recommended Textbook)
3. Taming PYTHON By Programming, Jeeva Jose, Khanna Publishing House (AICTE Recommended
Textbook)
Reference Books
1. Learning Python, Mark Lutz, O'REILLY
2. Programming In Python, Dr. Pooja Sharma, BPB
3. Python Programming - Using Problem-Solving Approach, Reema Thareja, OXFORD UNIVERSITY
PRESS
Sayan Majumder 2024-25 Odd Semester FYCYS 301 Page 7