About Me

header ads



Course Code:18CS55
IA Marks:40
Exam Marks:60
Number of Lecture Hours/Week:03 
Total Number of Lecture Hours:40 
Exam Hours:03

Course Learning Objectives:This course (18CS55) will enable students to

• Learn the syntax and semantics of Python programming language.
• Illustrate the process of structuring the data using lists, tuples and dictionaries.
• Demonstrate the use of built-in functions to navigate the file system.
• Implement the Object Oriented Programming concepts in Python.
• Appraise the need for working with various documents like Excel, PDF, Word and Others.

Module – 1 

Python Basics, Entering Expressions into the Interactive Shell, The Integer, Floating-Point,
and String Data Types, String Concatenation and Replication, Storing Values in Variables,
Your First Program, Dissecting Your Program,Flow control, Boolean Values, Comparison
Operators, Boolean Operators,Mixing Boolean and Comparison Operators, Elements of Flow
Control, Program Execution, Flow Control Statements, Importing Modules,Ending a
Program Early with sys.exit(), Functions, def Statements with Parameters, Return Values
and return Statements,The None Value, Keyword Arguments and print(), Local and Global
Scope, The global Statement, Exception Handling, A Short Program: Guess the Number
Textbook 1: Chapters 1 – 3

Module – 2

Lists, The List Data Type, Working with Lists, Augmented Assignment Operators, Methods,
Example Program: Magic 8 Ball with a List, List-like Types: Strings and Tuples,References,
Dictionaries and Structuring Data, The Dictionary Data Type, Pretty Printing, Using Data
Structures to Model Real-World Things, Manipulating Strings, Working with Strings,
Useful String Methods, Project: Password Locker, Project: Adding Bullets to Wiki Markup
Textbook 1: Chapters 4 – 6

Module – 3

Pattern Matching with Regular Expressions, Finding Patterns of Text Without Regular
Expressions, Finding Patterns of Text with Regular Expressions,More Pattern Matching with
Regular Expressions, Greedy and Nongreedy Matching, The findall() Method, Character
Classes, Making Your Own Character Classes, The Caret and Dollar Sign Characters, The
Wildcard Character, Review of Regex Symbols, Case-Insensitive Matching, Substituting
Strings with the sub() Method, Managing Complex Regexes, Combining re .IGNORECASE,
re .DOTALL, and re .VERBOSE, Project: Phone Number and Email Address Extractor,
Reading and Writing Files, Files and File Paths, The os.path Module, The File
Reading/Writing Process, Saving Variables with the shelve Module,Saving Variables with
the pprint.pformat() Function, Project: Generating Random Quiz Files, Project:
Multiclipboard, Organizing Files, The shutil Module, Walking a Directory Tree,
Compressing Files with the zipfile Module, Project: Renaming Files with American-Style
Dates to European-Style Dates,Project: Backing Up a Folder into a ZIP File, Debugging,
Raising Exceptions, Getting the Traceback as a String, Assertions, Logging, IDLE’s
Textbook 1: Chapters 7 – 10

Module – 4

Classes and objects, Programmer-defined types, Attributes, Rectangles, Instances as return
values, Objects are mutable, Copying, Classes and functions, Time, Pure functions,
Modifiers, Prototyping versus planning, Classes and methods, Object-oriented features,
Printing objects, Another example, A more complicated example,The init method, The
__str__ method, Operator overloading, Type-based dispatch, Polymorphism, Interface and
implementation,Inheritance, Card objects, Class attributes, Comparing cards, Decks,
Printing the deck, Add, remove, shuffle and sort, Inheritance, Class diagrams, Data
Textbook 2: Chapters 15 – 18

Module – 5

Web Scraping, Project: MAPIT.PY with the webbrowser Module, Downloading Files from
the Web with the requests Module, Saving Downloaded Files to the Hard Drive, HTML,
Parsing HTML with the BeautifulSoup Module, Project: “I’m Feeling Lucky” Google
Search,Project: Downloading All XKCD Comics, Controlling the Browser with the selenium
Module, Working with Excel Spreadsheets, Excel Documents, Installing the openpyxl
Module, Reading Excel Documents, Project: Reading Data from a Spreadsheet, Writing
Excel Documents, Project: Updating a Spreadsheet, Setting the Font Style of Cells, Font
Objects, Formulas, Adjusting Rows and Columns, Charts, Working with PDF and Word
Documents, PDF Documents, Project: Combining Select Pages from Many PDFs, Word
Documents, Working with CSV files and JSON data, The csv Module, Project: Removing
the Header from CSV Files, JSON and APIs, The json Module, Project: Fetching Current
Weather Data
Textbook 1: Chapters 11 – 14

Course Outcomes: After studying this course, students will be able to

• Demonstrate proficiency in handling of loops and creation of functions.
• Identify the methods to create and manipulate lists, tuples and dictionaries.
• Discover the commonly used operations involving regular expressions and file system.
• Interpret the concepts of Object-Oriented Programming as used in Python.
• Determine the need for scraping websites and working with CSV, JSON and other file formats.

Complete Notes

Question paper pattern:

• The question paper will have ten questions.
• Each full Question consisting of 20 marks
• There will be 2 full questions (with a maximum of four sub questions) from each module.
• Each full question will have sub questions covering all the topics under a module.
• The students will have to answer 5 full questions, selecting one full question from each module.

Text Books:

1. Al Sweigart,“Automate the Boring Stuff with Python”,1stEdition, No Starch Press, 2015. (Available under CC-BY-NC-SA license at https://automatetheboringstuff.com/) (Chapters 1 to 18)
2. Allen B. Downey, “Think Python: How to Think Like a Computer Scientist”, 2nd Edition, Green Tea Press, 2015. (Available under CC-BY-NC license at http://greenteapress.com/thinkpython2/thinkpython2.pdf) (Chapters 13, 15, 16, 17, 18) (Download pdf/html files from the above links)

Text Book

Reference Books:

1. Gowrishankar S, Veena A, “Introduction to Python Programming”, 1st Edition, CRC Press/Taylor & Francis, 2018. ISBN-13: 978-0815394372
2. Jake VanderPlas, “Python Data Science Handbook: Essential Tools for Working with Data”, 1st Edition, O’Reilly Media, 2016. ISBN-13: 978-1491912058
3. Charles Dierbach, “Introduction to Computer Science Using Python”, 1st Edition, Wiley India Pvt Ltd, 2015. ISBN-13: 978-8126556014
4. Wesley J Chun, “Core Python Applications Programming”, 3rd Edition, Pearson Education India, 2015. ISBN-13: 978-9332555365