CSEN1021 - PROGRAMMING WITH PYTHON
L T P C
0 0 6 3
Course Objectives:
To elucidate problem solving through python programming language
To introduce function-oriented programming paradigm through python
To train in development of solutions using modular concepts
To teach practical Python solution patterns
Module I: Introduction to Python 12 H
Python – Numbers, Strings, Variables, operators, expressions, statements, String operations,
Math function calls, Input/output statements, Conditional If, while and for loops.
Exercises:
Accept input from user and store it in variable and print the value.
Use of print statements and use of (.format )for printing different data types.
Take 2 numbers as user input and add, multiply, divide, subtract, remainder and print
the output (Same operations on floating point input as well)
Conversion of one unit to another (such as hours to minutes, miles to km and etc)
Usage of mathematical functions in python like math.ceil, floor, fabs, fmod, trunc,
pow, sqrt etc.
Building a mathematical calculator that can perform operations according to user input.
Use decision making statement.
Accepting 5 different subject marks from user and displaying the grade of the student.
Printing all even numbers, odd numbers, count of even numbers, count of odd numbers
within a given range.
o Compute the factorial of a given number. b) Compute GCD of two given
numbers. c) Generate Fibonacci series up to N numbers.
Check whether the given input is a) palindrome b) strong c) perfect
Compute compound interest using loop for a certain principal and interest amount
Learning Outcomes:
After completion of this unit the student will be able to
solve simple problems using control structures, input and output statements. (L3)
develop user defined functions (recursive and non-recursive). (L3)
Module II: Functions 15 H
41
User defined Functions, parameters to functions, recursive functions. Lists, Tuples,
Dictionaries, Strings.
Exercises:
Create a function which accepts two inputs from the user and compute nCr
Recursive function to compute GCD of 2 numbers
Recursive function to find product of two numbers
Recursive function to generate Fibonacci series
Program to print a specified list after removing the 0th, 4th and 5th elements.
Sample List : ['Red', 'Green', 'White', 'Black', 'Pink', 'Yellow']
Expected Output : ['Green', 'White', 'Black']
Program to get the difference between the two lists.
Program to find the second smallest number and second largest number in a list.
Given a list of numbers of list, write a Python program to create a list of tuples
having first element as the number and second element as the square of the
number.
Given list of tuples, remove all the tuples with length K.
Input : test_list = [(4, 5), (4, ), (8, 6, 7), (1, ), (3, 4, 6, 7)], K = 2
Output : [(4, ), (8, 6, 7), (1, ), (3, 4, 6, 7)]
Explanation : (4, 5) of len = 2 is removed.
Program to generate and print a dictionary that contains a number (between 1
and n) in the form (x, x*x).
Sample Input: (n=5) :
Expected Output : {1: 1, 2: 4, 3: 9, 4: 16, 5: 25}
Program to remove a key from a dictionary
Program to get the maximum and minimum value in a dictionary.
Program to perform operations on string using unicodes ,splitting of string,accessing
elements of string using locations
Program for Counting occurrence of a certain element in a string, getting indexes that
have matching elements.For ex -.In Rabbit count how many times b has occurred .
Example-I have to go to a doctor and get myself checked. Count the number of
occurrences of ‘to’.
Program for replacing one substring by another For example - Rabbit - Replace ‘bb’ by
‘cc’
Program to Acronym generator for any user input (ex-input is Random memory access
then output should be RMA).Example - Random number (RN)
Python function that accepts a string and calculates the number of uppercase
letters and lowercase letters.
Program to count the number of strings where the string length is 2 or more and
the first and last character are same from a given list of strings
Sample List : ['abc', 'xyz', 'aba', '1221'] Expected Result : 2
42
Learning Outcomes:
After completion of this unit the student will be able to
understand the concept of subprograms and recursion (L2).
apply the in-built functions to develop custom functions for solving problems (L3).
make use of parameter passing mechanisms (L3).
develop user defined functions (recursive and non-recursive). (L3)
summarize the features of lists, tuples, dictionaries, strings and files. (L2)
Module III: Files and Packages 15 H
Files—Python Read Files, Python Write/create Files, Python Delete Files.
Pandas -- Read/write from csv, excel, json files, add/ drop columns/rows, aggregations,
applying functions.
Exercises
read an entire text file.
read the first n lines of a file.
append text to a file and display the text.
Read numbers from a file and write even and odd numbers to separate files.
Count characters, words and lines in a text file.
To write a list to a file.
Given a CSV file or excel file to read it into a dataframe and display it.
Given a dataframe, select rows based on a condition.
Given is a dataframe showing the name, occupation, salary of people. Find the
average salary per occupation.
To convert Python objects into JSON strings. Print all the values.
Write a Pandas program to read specific columns from a given excel file.
Learning Outcomes:
After completion of this unit the student will be able to
read data from files of different formats and perform operations like slicing, insert,
delete, update(L3).
Ability to define and use of Packages(L2).
Module IV: Operations in database with suitable libraries 15 H
SQLite3: CRUD operations (Create, Read, Update, and Delete) to manage data stored in a
database. Matplotlib -- Visualizing data with different plots, use of subplots. User defined
packages, define test cases.
Exercises
Special commands to sqlite3 (dot-commands)
Rules for "dot-commands"
Changing Output Formats
Querying the database schema
Redirecting I/O
Writing results to a file
Reading SQL from a file
File I/O Functions
The edit() SQL function
Importing CSV files
Export to CSV
Export to Excel
Reference - https://www.sqlite.org/cli.html
Matplotlib can be practiced by considering a dataset and visualizing it.
It is left to the instructor to choose appropriate dataset.
43
Learning Outcomes:
After completion of this unit the student will be able to
● visualize the data (L4).
● Understanding the various operations performed with SQLite3. (L2)
● make use of SQLite3 operations to store and retrieve data (L3).
Module V: Regular Expressions 15 H
Regular expression: meta character, regEx functions, special sequences, Web scrapping,
Extracting data.
Exercises
Write a Python program to check that a string contains only a certain set of characters (in this
case a-z, A-Z and 0-9).
Write a Python program that matches a string that has an a followed by zero or more b's
Write a Python program that matches a string that has an a followed by one or more b's
Write a Python program that matches a string that has an a followed by zero or one 'b'
Write a Python program that matches a string that has an a followed by three 'b'
Write a Python program to find sequences of lowercase letters joined with an underscore
Write a Python program to test if a given page is found or not on the server.
Write a Python program to download and display the content of robot.txt for en.wikipedia.org.
Write a Python program to get the number of datasets currently listed on data.gov
Write a Python program to extract and display all the header tags from
en.wikipedia.org/wiki/Main_Page
.
Learning Outcomes:
After completion of this unit, the student will be able to:
● make use of Web scrapping operations (L3).
● Use regular expressions to extract data from strings.(L3)
Text Books(s)
1. Programming with python, T R Padmanabhan, Springer
2. Python Programming: Using Problem Solving Approach, Reema Thareja,
Oxford University Press
Reference Book(s)
1. Programming with python, T R Padmanabhan, Springer
2. Python Programming: Using Problem Solving Approach, Reema Thareja,
Oxford University Press
3. Python for Data Analysis, Wes McKinney, O.Reeilly
Course Outcomes:
After completion of this course the student will be able to
Define variables and construct expressions (L1).
Utilize arrays, storing and manipulating data (L3).
Develop efficient, modular programs using functions (L3).
Write programs to store and retrieve data using files (L3).
44