GUJARAT TECHNOLOGICAL UNIVERSITY#
Program Name: Diploma in Engineering Level: Diploma#
Branch: Information Technology#
Course / Subject Code : DI01016011
Course / Subject Name : Python Programming
| w. e. f. Academic Year: | 2024-2025 |
|---|---|
| Semester: | 1 st |
| Category of the Course: | PCC |
| Prerequisite: | Basic computer skills, including the ability to write basic statements and expressions. |
|---|---|
| Rationale: | Computer programming skills are now becoming part of basic education as these skills are increasing of vital importance for future job and career prospects. The Python programming language is one of the most popular programming languages worldwide. The course emphasizes the use of python programming in multiple domains. Python is a modern language for writing compact codes specifically for programming Server-side web apps, Data Analytics and Machine Learning, an important Artificial Intelligence domain. Furthermore, Python has gained popularity in scientific computing, production tools and game programming. This course focuses on developing python programming to do a variety of programming tasks where the students are encouraged to develop basic applications using different open source tools. At the end of the course, the student will be developing adequate basic programming skills using python language. |
Course Outcome:#
After Completion of the Course, Student will able to:
| No | Course Outcomes | RBT Level |
|---|---|---|
| Prepare flowchart and algorithm for solving computing problems. | Apply | 01 |
| Develop python programs to solve simple problems. | Apply | 02 |
| Apply control structure feature of python for developing programs. | Apply | 03 |
| Develop programs in Python using built-in functions, modules, and library functions. | Apply | 04 |
| Develop python programs applying strings and lists manipulation concepts. | Apply | 05 |
*Revised Bloom’s Taxonomy (RBT)
GUJARAT TECHNOLOGICAL UNIVERSITY#
Program Name: Diploma in Engineering Level: Diploma#
Branch: Information Technology#
Course / Subject Code : DI01016011
Course / Subject Name : Python Programming
Teaching and Examination Scheme:#
| Teaching Scheme (in Hours) | Teaching Scheme (in Hours) | Teaching Scheme (in Hours) | Total Credits L+T+ (PR/2) | Assessment Pattern and Marks | Assessment Pattern and Marks | Assessment Pattern and Marks | Assessment Pattern and Marks | Total |
|---|---|---|---|---|---|---|---|---|
| L | T | PR | C | Theory | Theory | Tutorial / Practical | Tutorial / Practical | Marks |
| ESE (E) | PA / CA (M) | PA/CA (I) | ESE (V) | |||||
| 3 | 0 | 2 | 4 | 70 | 30 | 20 | 30 | 150 |
Course Content:#
| Unit No. | Content | No. of Hours | % of Weightage |
|---|---|---|---|
| 1 | Problem Solving using Flowchart and Algorithm 1.1 Introduction, Steps for problem-solving, Algorithm and its characteristics, Importance of algorithm. 1.2 Symbolic representation of a flowchart, Importance and Limitations of flowchart, Flow of control 1.3 Problem solving using pseudocode | 05 | 11 |
| 2 | Basics of Python 2.1 Introduction to python, Python features, Applications of python programming 2.2 Python installation 2.3 Basic structure of python program, Python Comments, Keywords, identifiers, variables, Data types, and Operators. 2.4 Type Conversion | 10 | 17 |
| 3 | Flow of Control 3.1 Introduction to Flow of Control 3.2 Selection ● If statement ● Elif statement ● Nested if statement ● match statement 3.3 Repetition ● For loop ● While loop ● Nested loop 3.4 break, continue, and pass Statements | 10 | 24 |
| 4 | Functions 4.1 Introduction to Functions | 10 | 24 |
GUJARAT TECHNOLOGICAL UNIVERSITY#
Program Name: Diploma in Engineering Level: Diploma#
Branch: Information Technology#
Course / Subject Code : DI01016011
Course / Subject Name : Python Programming
| 4.2 4.3 | ● User Defined Functions ● Arguments and Parameters Scope of a Variable ● Global Variable ● Local Variable Python Standard Library ● Built-in functions ● Input or output - input() , print() ● Mathematical Functions - abs(), divmod(), max(), min(), pow(), sum() ● Module ○ math ○ random ○ statistics | |||
|---|---|---|---|---|
| 5. | Strings and Lists 5.3 5.4 | Strings and Lists 5.3 5.4 | ||
| 5.1 5.2 5.5 | Introduction to Strings, String Operations, Traversing a String Strings Methods and Built-in Functions Introduction to List and its Operations List Methods and Built-in Functions ● Nested and Copying Lists List as Arguments to Function | 10 | 24 | |
| Total | 45 | 100 |
Suggested Specification Table with Marks (Theory):#
Distribution of Theory Marks (in %)#
| R Level | U Level | A Level | N Level | E Level | C Level |
|---|---|---|---|---|---|
| 23 | 28 | 49 | - | - | - |
Where R: Remember; U: Understanding; A: Application, N: Analyze and E: Evaluate C: Create (as per Revised Bloom’s Taxonomy)
References/Suggested Learning Resources:#
(a) Books:#
| Sr. No. | Title of Book | Author | Publication with place, year and ISBN |
|---|---|---|---|
| 1 | Learn Programming in Python with Cody Jackson | Cody Jackson | Packt Publishing, 2018, ISBN : 9781789531947 |
| 2 | Python Basics: A Practical | David Amos, Dan | Real Python, 2021 |
GUJARAT TECHNOLOGICAL UNIVERSITY#
Program Name: Diploma in Engineering Level: Diploma#
Branch: Information Technology#
Course / Subject Code : DI01016011
Course / Subject Name : Python Programming
| Introduction to Python 3 | Bader et. al. | ISBN : 9781775093329 | |
|---|---|---|---|
| 3 | Introduction to Problem Solving with Python | E. Balagurusamy | Mc Graw Hill India, New Delhi ISBN: 9789352602582 |
| 4 | Beginning Python | James Payne | Wiley, 2010 ISBN: 9780470414637 |
| 5 | Think Python | Allen Downey | O’Reilly, USA, 2016, ISBN : 978-9352134755 |
(b) Open source software and website:#
- www.python.org
- www.learnpython.org
- www.hackr.io/tutorials/learn-python
- www.sololearn.com/learning/1073
- www.nptel.iitm.ac.in
Suggested Course Practical List:#
The following practical outcomes (PrOs) are the subcomponents of the COs. These PrOs need to be attained to achieve the COs.
| Sr. No. | Practical Outcomes (PrOs) | Unit No. | Approx. Hrs. required |
|---|---|---|---|
| 1 | Prepare flowchart and algorithm for a given problem. ● Find the sum of two given numbers. ● Find a maximum out of two given numbers. ● Find whether a given number is odd or even. ● Find a maximum out of three given numbers. | 1 | 2 |
| 2 | Install & configure python software and Create a program to print your name, date of birth and mobile number. | 2 | 2 |
| 3 | Develop a program to identify data-types in python. | 2 | 2 |
| 4 | 1) Create a program to read three numbers from the user and find the average of the numbers. 2) Create a program to convert temperature from Fahrenheit to Celsius unit using eq: C=(F-32)/1.8 | 2 | 2 |
| 5 | 1) Create a program to identify whether the scanned number is even or odd and print an appropriate message. | 3 | 2 |
GUJARAT TECHNOLOGICAL UNIVERSITY#
Program Name: Diploma in Engineering Level: Diploma#
Branch: Information Technology#
Course / Subject Code : DI01016011
Course / Subject Name : Python Programming
| 2) Create a program to find a maximum number among the given three numbers. | |||
|---|---|---|---|
| 6 | Develop a program to show whether the entered number is prime or not. | 3 | 2 |
| 7 | Develop a program to print odd and even numbers from 1 to N numbers. (Where N is an integer number entered by the user) | 3 | 2 |
| 8 | Develop a program to demonstrate the use of break, continue and pass statements. | 3 | 2 |
| 9 | 1) Develop a user-defined function to find the factorial of a given number. 2) Create a user-defined function to print the Fibonacci series of 0 to N numbers. (Where N is an integer number and passed as an argument) | 4 | 2 |
| 10 | Write a program using the function that reverses the entered value. | 4 | 2 |
| 11 | Write a program that determines whether a given number is an Armstrong number or not using a user-defined function. | 4 | 2 |
| 12 | 1) Write a program to reverse words in a given sentence. 2) Write a program to check if a substring is present in a given string. 3) Write a program to count and display the number of vowels, consonants, uppercase, lowercase characters in a string. | 5 | 2 |
| 13 | 1) Create a program to find the sum of all elements in a list using a loop. 2) Create a program to find the smallest and largest element in a given list. | 5 | 3 |
| 14 | Given a list saved in variable: a = [1, 8, 7, 15, 25, 36,48, 64, 81, 95]. Write a Python program that takes this list and makes a new list that has only the even elements of this list in it. | 5 | 3 |
| Total | 30 |
Note :-
More Practical Exercises can be designed and offered by the respective course teacher to develop the industry relevant skills/outcomes to match the COs. The above table is only a suggestive list.
List of Laboratory/Learning Resources Required:#
| Sr. No. | Laboratory/Learning Resources/Equipment Name with Broad Specifications | PrO. No. |
|---|---|---|
| 1 | Computer system with operating system: Windows 7 or higher Ver., macOS, and Linux, with 4GB or higher RAM, Python versions: 2.7.X, 3.6.X, or | All |
GUJARAT TECHNOLOGICAL UNIVERSITY#
Program Name: Diploma in Engineering Level: Diploma#
Branch: Information Technology#
Course / Subject Code : DI01016011
Course / Subject Name : Python Programming
| higher Ver. | ||
|---|---|---|
| 2 | Python IDEs and Code Editors Open Source : IDLE, Jupyter | 2 to 14 |
Suggested Project List:#
Only one project is planned to be undertaken by a student that needs to be assigned to him/her in the beginning of the semester. The project could be industry application based, internet-based, workshop-based, laboratory-based or field-based. Each project should encompass two or more COs which are in fact, an integration of PrOs, UOs and ADOs. Each student will have to maintain a dated work diary consisting of individual contributions in the project work and give a seminar presentation of it before submission. The duration of the project should be about 14- 16 (fourteen to sixteen) student engagement hours during the course. The students ought to submit projects by the end of the semester to develop the industry-oriented COs.
A suggestive list of projects is given here. This has to match the COs. Similar projects could be added by the concerned course teacher:
- Develop a console based application to convert number systems(i.e. . Binary to Decimal, Binary to Octal, etc.)
- Develop a simple calculator.
- Develop console based Countdown timer.
- Print number system table for given range.(Decimal | Binary | Octal | Hexadecimal)
- Develop a fizz-buzz game.
- Develop a program to generate random passwords (8 Digits.).
Suggested Activities for Students:#
Other than the classroom and laboratory learning, following are the suggested student- related cocurricular activities which can be undertaken to accelerate the attainment of the various outcomes in this course: Students should perform following activities in group and prepare reports of about 5 pages for each activity. They should also collect/record physical evidences for their (student’s) portfolio which may be useful for their placement interviews:
- a) Prepare a document which differentiates python versions.
- b) Undertake projects in teams
- c) Give a seminar on any relevant topics.
- d) Undertake a market survey of different python frameworks.

