Python Training Program
Python Training Program
ON
Python Programming
Submitted in partial fulfilment of requirement for the award of the degree of
BACHELOR OF TECHNOLOGY
In
Computer Science Engineering
At
Delhi Technical Campus
SUBMITTED BY
AJAY YADAV
ROLL NO. (00118007221)
SESSION 2023-2024
SUBMITTED TO
Mrs Nidhi Sharma
Assistant Professor
Department of Computer Science & Engineering
SESSION 2023
2
Acknowledgement
It is our proud privilege and duty to acknowledge the kind of help and guidance received from several
people in preparation of this report. It would not have been possible to prepare this report in this form
without their valuable help, cooperation and guidance. First and foremost, we wish to record our sincere
gratitude to Prof., Ms. Nidhi Sharma for his constant support and encouragement in preparation of this
report and for making available library and laboratory facilities needed to prepare this report.
The seminar on “Python” was very helpful to us in giving the necessary background information and
inspiration in choosing this topic for the seminar. Their contributions and technical support in preparing
this report are greatly acknowledged.
Last but not the least, we wish to thank our parents for financing our studies in this college as well as for
constantly encouraging us to learn engineering. Their personal sacrifice in providing this opportunity to
learn engineering is gratefully acknowledgement.
3
ABOUT THE COMPANY
CodSoft are IT services and IT consultancy that specializes in creating innovative solutions for businesses. We
are passionate about technology and believe in the power of software to transform the world. Our internship
program is just one of the ways in which we are investing in the future of the industry.
At CodSoft, we believe practical knowledge is the key to success in the tech industry. Our aim is to help students
lacking basic skills by offering hands-on learning through live projects and real-world examples. Our team consists
of industry experts who are dedicated to equipping interns with the knowledge and skills needed to succeed in
their careers. We foster an inclusive and supportive environment that encourages learning, growth, and creativity.
Mission
Software development is an iterative process, and the mission includes continually improving software solutions.
This entails gathering feedback, identifying areas for enhancement, and implementing updates to make the
software more efficient, user-friendly, and reliable. Continuous improvement also involves staying up to date with
the latest technologies, tools, and industry trends.
Vision
The vision of software development is to create innovative solutions that push the boundaries of technology. This
involves leveraging emerging technologies, exploring new ideas, and developing software that brings novel
approaches to solving problems and improving the lives of users.
4
ABSTRACT
One of the main objectives of this internship is to expose us to a particular job and a profession or industry. While
we might have an idea about what a job is like, we won't know until we actually perform it if it's what we thought
it was, if we have the training and skills to do it and if it's something we like. Python is a suitable language for
both learning and real-world programming. Python is a powerful high level, object-oriented programming
language created by Guido van Rossum. Python utility is a multi-disciplinary approach to solve complex problem
into simple one in various fields. The amazing thing about Python is that you really can write an application on
one platform and use it on every other platform that you need to support. In contrast to other programming
languages that promised to provide platform independence, Python really does make that dependence possible.
In this case, the promise is as good as the result you get. Python emphasizes code readability and a concise syntax
that lets you write applications using fewer lines of code than other programming languages require. We can also
use a coding style that meets our needs, given that Python supports the functional, imperative, object-oriented,
and procedural coding styles. Python is a well-designed language that can be used for real world programming.
Python is a very high level, dynamic, object-oriented, general purpose programming language that uses interpreter
and can be used in a vast domain of applications. Python was designed to be easy to understand and use.
5
Table Of Contents
Introduction
1.1 Python 09
3.2 Variables 19
3.3 String 19
6
Tuple & List
4.1 Tuple 21
4.2 List 22
4.2.2Built in Operation 23
4.2.3Built in Functions 24
5.3 Function 28
CHAPTER - 2
CHAPTER – 3
CHAPTER- 4
Conclusion 37
Reference 38
7
Table Of Figures
Fig.1 11
Fig.2 12
Fig.3 12
Fig.4 13
Fig.5 13
Fig.6 14
Fig.7 14
Fig.8 15
Fig.9 15
Fig.10 16
Fig.11 16
Fig.12 17
Fig.13 18
Fig.14 18
Fig.15 35
Fig.16 35
Fig.17 36
8
Chapter 1
Python
Scripting Language
A scripting or script language is a programming language that supports scripts, programs written
for a special run-time environment that automate the execution of tasks that could alternatively
be executed one-by-one by a human operator.
Scripting languages are often interpreted (rather than compiled). Primitives are usually the
elementary tasks or API calls, and the language allows them to be combined into more complex
programs. Environments that can be automated through scripting include software applications,
web pages within a web browser, the shells of operating systems (OS), embedded systems, as
well as numerous games.
In OO programming, computer programs are designed by making them out of objects that interact
with one another. There is significant diversity in object oriented programming, but most popular
languages are class-based, meaning that objects are instances of classes, which typically also
determines their type.
History
Python was conceived in the late 1980s, and its implementation was started in December
1989 by Guido van Rossum at CWI in the Netherlands as a successor to the ABC language (itself
inspired by SETL) capable of exception handling and interfacing with the Amoeba operating system.
Van Rossum is Python's principal author, and his continuing central role in deciding the direction
of Python is reflected in the title given to him by the Python community, benevolent dictator for life
(BDFL).
10
Fig-1
“Python is an experiment in how much freedom programmers need. Too much freedom and nobody can
read another's code;too little and expressiveness is endangered.”
Over six years ago, in December 1989, I was looking for a "hobby" programming project that would
keep me occupied during the week around Christmas. My office ... would be closed, but I had a home
Computer, and not much else on my hands. I decided to write an interpreter for the new scripting
language I had been thinking about lately: a descendant of ABC that would appeal to Unix/C hackers.
11
I chose Python as a working title for the project, being in a slightly irreverent mood (and a big fan of
Monty Python's Flying Circus).
Downloading Python
If you don’t already have a copy of Python installed on your computer, you will need to open up your
Internet browser and go to the Python download page
(http://www.python.org/download/).
Fig-2
Now that you are on the download page, select which of the software builds you would like to
download. For the purposes of this article we will use the most up to date version available
(Python 3.4.1).
Fig-3
12
Once you have clicked on that, you will be taken to a page with a description of all the new updates
and features of 3.4.1, however, you can always read that while the download is in process. Scroll to
the bottom of the page till you find the “Download” section and click on the link that says “download
page.”
Fig-4
Now you will scroll all the way to the bottom of the page and find the “Windows x86 MSI
installer.” If you want to download the 86-64 bit MSI, feel free to do so. We believe that even
if you have a 64-bit operating system installed on your computer, the 86-bit MSI is preferable.
We say this because it will still run welland sometimes, with the 64bit architectures, some of the
compiled binaries and Python libraries don’t work well.
Fig-5
13
Installing Python
Once you have downloaded the Python MSI, simply navigate to the download locationon your computer,
double clicking the file and pressing Run when the dialog box popsup.
Fig-6
If you are the only person who uses your computer, simply leave the “Install for all users” option selected.
If you have multiple accounts on your PC and don’t want to install it across
all accounts, select the “Install just for me” option then press “Next.”
Fig-7
14
if you want to change the install location, feel free to do so; however, it is best to leave it as is and simply
select next, Otherwise...
Scroll down in the window and find the “Add Python.exe to Path” and click on the smaller
“x.” Choose the “Will be installed on local hard drive” option then press “Next.”
Fig-8
Now that you have completed the installation process, click on “Finish.
Fig-9
15
Setup the Path Variable
Begin by opening the start menu and typing in “environment” and select the option called
Once you have the “Environment Variables” window open, direct your focus to the bottom half.
You will notice that it controls all the “System Variables” rather than just this associated with
your user. Click on “New…” to create a new variable for Python.
Fig-10
Simply enter a name for your Path and the code shown below. For the purposes of this
example, we have installed Python 2.7.3, so we will call the path: “Python path.” The string
16
Fig-11
Running The Python IDLE
Now that we have successfully completed the installation process and added our “Environment
Variable,” you are ready to create your first basic Python script. Let's begin by opening Python’s
GUI by pressing “Start” and typing “Python” and selecting the “IDLE (Python GUI).”
17
Fig-12
Once the GUI is open, we will begin by using the simplest directive possible. This is the “print”
directive which simply prints whatever you tell it to, into a new line. Start by typing a print directive
like the one shown in the image below or copy and paste this text then press
18
Fig-13 Python
Code Execution
Python’s traditional runtime execution model: source code you type is translated to byte code, which is then
run by the Python Virtual Machine. Your code is automatically compiled, but then it is interpreted.
Fig-14
Source code extension is. Py
Data types determine whether an object can do something, or whether it just would not make sense.
Other programming languages often determine whether an operation makes sense for an object by
making sure the object can never be stored somewhere where the operation will be performed on
the object (this type of system is called static typing). Python does not do that. Instead, it stores the
type of an object with the object, and checks when the operation is performed whether that operation
makes sense for that object Python has many native data types. Here are the important ones:
Numbers can be integers (1 and 2), floats (1.1 and 1.2), fractions (1/2 and 2/3), or even complex numbers.
Variable
Variables are nothing but reserved memory locations to store values. This means that when you
create a variable you reserve some space in memory.
Based on the data type of a variable, the interpreter allocates memory and decides what can be
stored in the reserved memory. Therefore, by assigning different data types to variables, you can
store integers, decimals or characters in these variables.
String
In programming terms, we usually call text a string. When you think of a string as a collection of letters,
the term makes sense.
All the letters, numbers, and symbols in this book could be a string.
For that matter, your name could be a string, and so could your address.
20
Creating Strings
In Python, we create a string by putting quotes around text. For example, we could take our otherwise useless
• len("hello") 5 # size
• "hello" < "jello" 1 # comparison
Arithmetic Operator
21
/ Divide left operand by the right one (always resultsinto float) x/y
// Floor division - division that results into whole number adjusted to the left in the x // y
number line
(x to
the
power
y)
Tuples
A tuple is a sequence of immutable Python objects. Tuples are sequences, just like lists. The differences
between tuples and lists are, the tuples cannot be changed unlike lists and tuples use parentheses.
To access values in tuple, use the square brackets for slicing along with the index or indices to
obtain value available at that index. For example − tup1 = ('physics', 'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5, 6, 7 ); print "tup1[0]: ", tup1[0] print
When the above code is executed, it produces the following result − tup1[0]:
22
BasicTuplesOperations
Tuples respond to the + and * operators much like strings; they mean concatenation and repetition
here too, except that the result is a new tuple, not a string. In fact, tuples respond to all of the
general sequence operations we used on strings in the prior chapter
−
Built-inTuple Functions
23
3 max(tuple) Returns item from the tuple with max value.
List
The list is a most versatile datatype available in Python which can be written as a list of comma-
separated values (items) between square brackets. Important thing about a list is that items in a list
need not be of the same type.
Output: list1[0]: physics list2[1:5]: [2,
3, 4, 5]
printlist1
24
Python Expression Results Description
25
5 list(seq) Converts a tuple into list.
26
Loop definition
Programming languages provide various control structures that allow for more complicated execution paths.
A loop statement allows us to execute a statement or group of statements multiple times. The following
diagram illustrates a loop statement −
x>
> Greater that - True if left operand is greater than the right y
< Less that - True if left operand is less than the right x<
y
27
<= Less than or equal to - True if left operand is less than or equal +x
tothe right <=
y
Python programming language provides following types of loops to handle looping requirements.
Loop Type Description
nested loops You can use one or more loop inside any another while, for
or do..while loop.
Loop Example:
For Loop:
("Hello", mynum )
Hello 1
Hello 2
Hello 3
Hello 4
Hello 5
28
While Loop:
Decision making is anticipation of conditions occurring while execution of the program and specifying actions
taken according to the conditions.
Fig-15
Python programming language provides following types of decision making statements. Click the
following links to check their detail.
29
Statement Description
nested if statements You can use one if or else if statement inside another
if or else if statement(s).
Example:
If Statement:
a=33 b=200 If
b>a: print(“b”)
If...Else Statement:
a=200
b=33 if
b>a:
print(“b is greater than a”)else: print(“a is
greater than b”)
Function
Function blocks begin with the keyword def followed by the function name and parentheses ( ( )). Any input
parameters or arguments should be placed within these parentheses. You can also define parameters inside
these parentheses.
The first statement of a function can be an optional statement - the documentation string of the function.
The code block within every function starts with a colon (:) and is indented.
30
The statement return [expression] exits a function, optionally passing back an expression to the caller.
A return statement with no arguments is the same as return None.
Syntex:
Def functionname(parameters):
“function_docstring”
Function_suite Return[expression] Example:
Def printme(str):
31
Chapter 2
CALCULATOR
Source Code-
# import tkinter module from
tkinter import* expression =
"" def press(num):
button8.grid(row=4, column=1)
33
clear = Button(gui, text='Clear', fg='black', bg='red', command=clear,
height=1, width=7)
clear.grid(row=5, column='1')
TO DO LIST
SOURCE CODE-
else:
messagebox.showwarning("warning", "Please enter some task.")
def deleteTask():
lb.delete(ANCHOR)
ws = Tk()
ws.geometry('800x750+300+70')
ws.title('Python Daily Works')
ws.config(bg='#4863A0')
ws.resizable(width=False, height=False)
frame = Frame(ws) frame.pack(pady=10) lb
= Listbox( frame, width=25, height=8,
font=('Times', 18), bd=0, fg='#464646',
highlightthickness=0,
selectbackground='#a6a6a6',
activestyle="none",
)
lb.pack(side=LEFT, fill=BOTH) task_list = [
'Brush Teeth',
'Eat apple',
'Drink water',
'Go gym',
'Write notes',
'Write Code',
'Take a nap',
'Learn something',
34
]
for item in task_list:
lb.insert(END, item)
sb = Scrollbar(frame) sb.pack(side=RIGHT,
fill=BOTH)
lb.config(yscrollcommand=sb.set)
sb.config(command=lb.yview)
my_entry = Entry( ws, font=('times',
24)
)
my_entry.pack(pady=20) button_frame =
Frame(ws) button_frame.pack(pady=20)
addTask_btn = Button(
button_frame, text='Add
Task', font=('times 14'),
bg='#c5f776', padx=20,
pady=10,
command=newTask
)
addTask_btn.pack(fill=BOTH, expand=True, side=LEFT)
delTask_btn = Button( button_frame, text='Delete Task',
font=('times 14'), bg='#ff8b61', padx=20, pady=10,
command=deleteTask
)
delTask_btn.pack(fill=BOTH, expand=True, side=LEFT) ws.mainloop()
CONTACT BOOK
SOURCE CODE-
#import library from tkinter import *
from tkinter import messagebox
#Initialize window
root = Tk() root.geometry('700x550')
root.config(bg = '#DC143C')
root.title('Local Contact Book')
root.resizable(0,0) contactlist = [
['Sachin','369854712'],
['Shalni', '521155222'],
['Abhishek Yadav', '78945614'],
['Sakshi', '58745246'],
['Mohit Chopra', '5846975'],
35
['Karan Singh', '5647892'],
['Samiksha', '89685320'],
['Maheshwari', '98564785'],
['Ganesh Kumar','85967412']
]
Name = StringVar()
Number = StringVar()
def Selected():
print("hello",len(select.curselection())) if
len(select.curselection())==0:
messagebox.showerror("Error", "Please Select the Name") else:
return int(select.curselection()[0]) #function to add new contact
def AddContact():
if Name.get()!="" and Number.get()!="":
contactlist.append([Name.get() ,Number.get()])
print(contactlist) Select_set()
EntryReset()
messagebox.showinfo("Confirmation", "Successfully Add New Contact")
else:
messagebox.showerror("Error","Please fill the information")
#function to edit existing contact def
UpdateDetail():
if Name.get() and Number.get(): contactlist[Selected()] =
[Name.get(), Number.get()]
messagebox.showinfo("Confirmation", "Successfully Update Contact")
EntryReset()
36
Select_set() elif not(Name.get()) and not(Number.get()) and
not(len(select.curselection())==0): messagebox.showerror("Error", "Please fill the
information")
else:
if len(select.curselection())==0:
messagebox.showerror("Error", "Please Select the Name and \n press Load button") else:
message1 = """To Load the all information of \n selected row
press Load button\n.
""" messagebox.showerror("Error",
message1)
def EntryReset():
Name.set('')
Number.set('')
#function to delete selected contact def
Delete_Entry():
if len(select.curselection())!=0:
result=messagebox.askyesno('Confirmation','You Want to Delete Contact\n Which you selected') if
result==True: del contactlist[Selected()]
Select_set() else:
messagebox.showerror("Error", 'Please select the Contact')
# function to view contact def
VIEW():
NAME, PHONE = contactlist[Selected()]
Name.set(NAME)
Number.set(PHONE)
37
Button(root,text="EDIT", font='Helvetica 18 bold',bg='#e8c1c7',command = UpdateDetail, padx=20).place(x=
50, y=200)
Button(root,text="DELETE", font='Helvetica 18 bold',bg='#e8c1c7',command = Delete_Entry,
padx=20).place(x= 50, y=260)
Button(root,text="VIEW", font='Helvetica 18 bold',bg='#e8c1c7', command = VIEW).place(x= 50, y=325)
Button(root,text="RESET", font='Helvetica 18 bold',bg='#e8c1c7', command = EntryReset).place(x= 50, y=390)
Button(root,text="EXIT", font='Helvetica 24 bold',bg='tomato', command = EXIT).place(x= 250, y=470)
root.mainloop()
Chapter-3
Result- Calculator
Fig-15
38
Result- To-Do-List
Fig-16
Result-Contact Book
39
Fig-17
40
CHAPTER-4
CONCLUSION
In conclusion, the Python Training Internship offers a transformative experience for participants seeking to build
a strong foundation in Python programming. Throughout the program, interns have engaged in a dynamic
learning environment, acquiring essential skills, and gaining practical insights into the versatile applications of
Python in the software development landscape. As interns progressed through a structured curriculum, they
demonstrated a commitment to continuous improvement, showcasing their ability to adapt to challenging tasks
and collaborate effectively within a team. The hands-on approach to learning, combined with mentorship and
practical projects, has empowered participants to confidently apply their Python knowledge to real-world
scenarios. The Python Training Internship has not only equipped interns with technical expertise but has also
fostered a collaborative and innovative mindset. By exploring diverse projects, interns have honed their problem-
solving skills and gained valuable experience in areas such as web development, data analysis, automation
scripts, and even ventured into the exciting realm of machine learning. As the internship concludes, we celebrate
the achievements of each participant and recognize the growth they have achieved in their Python proficiency
and overall professional development. We are confident that the skills acquired during this program will serve
as a solid foundation for a successful career in Python programming. We extend our appreciation to all interns
for their dedication, enthusiasm, and contributions. We look forward to witnessing their continued success and
the positive impact they will make in the world of software development. Thank you for being part of this
enriching Python Training Internship journey.
41
REFERENCE
https://en.wikipedia.org/wiki/Flask_(web_framework)
https://github.com/jerrysingh181/URL-SHORTENING
https://realpython.com/tutorials/flask/
www.python.org
www.coursera.org
www.learnpython.org
42