lOMoARcPSD|19958008
ABSTRACT
Python is a modern, easy-to-learn, object-oriented programming language. It has a
powerful set of built-in data types and easy-to-use control constructs. Since Python is an
interpreted language, it is most easily reviewed by simply looking at and describing
interactive sessions. It is used in vast number of applications due to the various standard
libraries that come along with it and its capacity to integrate with other languages and use
their features. Python can be used for scripting, web scraping, and creating data sets. It’s
popular in the scientific community for scientific computing; there are libraries that make it
easy to share academic code projects in Python. Python is a web programming language, so
it interfaces with the internet. It knows how to receive and send web requests and talk to
databases. This paper describes the main features of Python programming, loops and
control statements in python then discusses applications of Python programming.
Keyword : - programming, open source, object-oriented, Real world programming.
lOMoARcPSD|19958008
EXPECTATIONS
Ability to work virtually and remotely
Experience of working
Learn how to prioritise time and effort
Improve ability to use new technology for working
Gain specific skills related to chosen career
The Expectation was to improve a student’s employability by allowing
them to gather additional skills and experiences and to facilitate them in
finding interesting job opportunities.
Students look for such opportunity to gain knowledge and experience
through work without too much difficulty, especially if they live far away
from where the internship is offered. A virtual internship is a great
opportunity for them to gain experience from literally anywhere. What
such an internship offers is that it enables students to gather work
experience with companies based in their own country or anywhere else
in the world.
Suitable hardware, software and internet connection for the student to be
in contact with the company as regularly as required.
lOMoARcPSD|19958008
LEARNING
Ability to work remotely-
The benefit of completing your internship remotely is that it allows you
to save both time and money. This is because you avoid many of the
traditional costs associated with internship programmes.
Experience of working-
It doesn't matter if the internship you performed was paid, unpaid,
or for college credits. Experience is experience, and the skills you
learned and the exposure you gained to your employer's industry
during your college internship are worth touting on your post-college
resume.
Learn how to prioritise time and effort-
Prioritize topics that are time sensitive or urgent to ensure you
address those first. This helps in proper time management and
effort.
Improve ability to use new technology for working-
Introducing technological change into an organization presents a
different set of challenges to management than does the work of
competent project administration.
Gain specific skills related to chosen career-
skills will come from your academic experience, and others you can
develop through experiences such as internships, study abroad and
research projects—called transferable or soft skills.
Transferable skills are skills that will be developed and applicable in
every profession. They are the foundation of professional success,
and they happen to be the most desirable skills employers are
searching for in potential candidates.
lOMoARcPSD|19958008
REALITY
When I started my practical....on
the first day...I didn’t know what
to expect...really first time
experience...” (Intern4_int).
According to this intern, everything was not really new to him and he
claimed that it would be good if he knew what exactly to expect on the
first day.
Most of the students interviewed felt that the internship program was
useful and necessary to prepare them for the real working world.
They mentioned that they learned of job etiquette and other skills such as
the ability to meet deadlines,
negotiation and interpersonal skills, perseverance, patience, discipline,
obedience and determination.
I was expected to have a high level of self discipline in terms of
punctuality, behaviour at the workplace and
appearance and to know about the etiquette at the workplace and always
use discretion when instructed to carry out tasks.
lOMoARcPSD|19958008
INTRODUCTION OF ORGANISATION
Ensino Research & Development is the place where students
are mastering new skills and achieving their goals by learning
from an extensive list of courses. Every course is designed to
meet the specific industry requirement. Content includes
hardware as well as software. Hours of topic-wise engaging
tutorials covering all concepts with multiple problem solutions by
some of India’s best experts. Practical training always finds the
better place over classroom training but now we have
implemented the classroom training and practical training
together. Hardware description with live components creates the
difference. Even students can ask for their doubts. Complex
concepts explained visually and contextually to help students
create a strong foundation.
lOMoARcPSD|19958008
TABLE OF CONTENTS
1. Introduction
Python
Scripting Language
Object Oriented Programming
History of python
Behind the Scene of Python
2. Data Types & Operator
Variables
String
Python Operator
Arithmetic Operator
Comparison Operator
Logical Operator
3. Tuple & List
Tuple
Accessing Tuple Values
Basic Tuples Operation
Built in Tuple Functions
List
Accessing List Values
Basic in Operation
Built in Functions & Methods
4. Loops & Conditional Statements
Loops
Loops Definition
Loops Example
Conditional Statement
Conditional Statement Definition & Example
Conditional Statement
Function Syntax & Examples
lOMoARcPSD|19958008
5. Uses & Scope
Scope of Python
What can we do With Python?
Who Uses Python Today?
Why do People Use Python
6. Conclusion
1. Introduction
1.1 Python
Python is a widely used high-level, general-purpose, interpreted, dynamic
programming language. Its design philosophy emphasizes code
readability, and its syntax allows programmers to express concepts in
fewer lines of code than would be possible in languages such as C++ or
Java. The language provides constructs intended to enable clear programs
on both a small and large scale. Python supports multiple programming
paradigms, including object-oriented, imperative and functional
programming or procedural styles. It features a dynamic type system and
automatic memory management and has a large and comprehensive
standard library. Python interpreters are available for installation on many
operating systems, allowing Python code execution on a wide variety of
systems.
1.2 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
lOMoARcPSD|19958008
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.
A scripting language can be viewed as a domain-specific language for a
particular environment; in the case of scripting an application, this is also
known as an extension language. Scripting languages are also sometimes referred to
as very high-level programming languages, as they operate at a high level of
abstraction, or as control languages.
1.3 Object Oriented Programming
Object-oriented programming (OOP) is a programming paradigm based on
the concept of "objects", which may contain data, in the form of fields,
often known as attributes; and code, in the form of procedures, often
known as methods. A distinguishing feature of objects is that an object's
procedures can access and often modify the data fields of the object with
which they are associated (objects have a notion of "this" or "self").
Like other general-purpose programming languages, Python is also an
object-oriented language since its beginning. It allows us to develop
applications using an Object-Oriented approach. In Python, we can easily
create and use classes and objects.
An object-oriented paradigm is to design the program using classes and
objects. The object is related to real-word entities such as book, house,
pencil, etc. The oops concept focuses on writing the reusable code. It is a
widespread technique to solve the problem by creating objects.
Major principles of object-oriented programming system are given below.
o Class
o Object
o Method
o Inheritance
o Polymorphism
lOMoARcPSD|19958008
o Data Abstraction
o Encapsulation
In OO programming, computer programs are designed by making them out of
objects that interact with one another. There is significant diversity in
objectoriented programming, but most popular languages are class-based,
meaning that objects are instances of classes, which typically also determines
their type.
1.4 History of python
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).
“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.”
- Guido Van Rossum
1.5 Behind the Scene of Python
About the origin of Python, Van Rossum wrote in 1996:
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
lOMoARcPSD|19958008
interpreter for the new scripting language I had been thinking about lately:
a descendant of ABC that would appeal to Unix/C hackers. 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).
1.6 Python Applications
Python is known for its general-purpose nature that makes it
applicable in almost every domain of software development.
Python makes its presence in every emerging field. It is the
fastest-growing programming language and can develop any
application.
Here, we are specifying application areas where Python can be
applied.
1)Web Applications
Django and Pyramid framework(Use for heavy applications
Flask and Bottle (Micro-framework)
2) Desktop GUI Applications
o Tkinter or Tk
o wxWidgetM
3)Console-based Application
4) Software Development
SCons is used to build control.
Buildbot and Apache Gumps are used for automated continuous
compilation and testing.
5) Scientific and Numeric
o NumPy
lOMoARcPSD|19958008
o Pandas
6) Business Applications
7) Audio or Video-based Applications
o Gstreamer
o Pyglet
8) 3D CAD Applications
o Fandango (Popular )
o CAMVOX
o HeeksCNC
o AnyCAD
o RCAM
9) Enterprise Applications
10) Image Processing Application
o OpenCV
o Pillow
o SimpleITK
lOMoARcPSD|19958008
2. Data Types & Operator
Data Type
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 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 (this is called
dynamic typing).
Python has many native data types. Here are the important ones:
Booleans are either True or False.
Numbers can be integers (1 and 2), floats (1.1 and 1.2),
fractions (1/2 and 2/3), or even complex numbers.
lOMoARcPSD|19958008
Strings are sequences of Unicode characters, e.g. an HTML
document.
Bytes and byte arrays, e.g. a JPEG image file.
Lists are ordered sequences of values.
Tuples are ordered, immutable sequences of values.
Sets are unordered bags of values.
2.1 Variables
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.
Ex:
counter = 100 # An integer
assignment miles = 1000.0
# A floating point name =
"John" # A string
2.2 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.
lOMoARcPSD|19958008
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
In Python, we create a string by putting quotes around text. For
example, we could take our otherwise useless
• "hello"+"world" "helloworld" # concatenation
• "hello"*3 "hellohellohello" # repetition
• "hello"[0] "h" # indexing
• "hello"[-1] "o" # (from end)
• "hello"[1:4] "ell" # slicing
• len("hello") 5 # size
• "hello" < "jello" 1 # comparison
• "e" in "hello" 1 # search
2.2.1 Arithmetic Operator
Operator Meaning Example
+ Add two operands or unary plus x+y
+2
- Subtract right operand from the left or x-y
unary minus -2
* Multiply two operands x*y
/ Divide left operand by the right one x/y
(always results into float)
% Modulus - remainder of the division of x%y
left operand by the right (remainder
of x/y)
lOMoARcPSD|19958008
// Floor division - division that results into x // y
whole number adjusted to the left in
the number line
** Exponent - left operand raised to the x**y (x to the
power of right power y)
2.2.2 Comparison Operator
Operator Meaning Example
> Greater that - True if left operand is x>y
greater than the right
< Less that - True if left operand is less than x<y
the right
== Equal to - True if both operands are equal x ==
y
!= Not equal to - True if operands are not x !=
equal y
>= Greater than or equal to - True if left x >=
operand is greater than or equal to the y
right
<= Less than or equal to - True if left operand x <=
is less than or equal to the right y
2.2.3 Logical Operator
Operator Meaning Example
and True if both the operands are x and y
true
or True if either of the operands is x or y
true
not True if operand is false not x
(complements the operand)
lOMoARcPSD|19958008
3. Tuple & List
3.1 Tuple
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, whereas lists use square
brackets.
Creating a tuple is as simple as putting different comma-
separated values. Optionally you can put these comma-
separated values between parentheses also.
For example – tup1 = ('physics',
'chemistry', 1997, 2000);
tup2 = (1, 2, 3, 4, 5 ); tup3 =
"a", "b", "c", "d";
3.1.1 Accessing Tuple Values
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 );
lOMoARcPSD|19958008
print "tup1[0]: ", tup1[0]
print "tup2[1:5]: ", tup2[1:5]
When the above code is executed, it produces
the following result − tup1[0]: physics
tup2[1:5]: [2, 3, 4, 5]
3.1.2 Basic Tuples Operation
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 –
Python Expression Results Description
len((1, 2, 3)) 3 Length
(1, 2, 3) + (4, 5, 6) (1, 2, 3, 4, 5, 6) Concatenation
('Hi!',) * 4 ('Hi!', 'Hi!', 'Hi!', 'Hi!') Repetition
3 in (1, 2, 3) True Membership
for x in (1, 2, 3): print x, 123 Iteration
3.1.3 Built in Tuple Functions
Python includes the following tuple functions –
SN Function with Description
1 cmp(tuple1, tuple2) Compares elements of both tuples.
2 len(tuple) Gives the total length of the tuple.
lOMoARcPSD|19958008
3 max(tuple) Returns item from the tuple with max value.
4 min(tuple) Returns item from the tuple with min value.
5 tuple(seq) Converts a list into tuple.
3.2 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.
Creating a list is as simple as putting different comma-
separated values between square brackets.
For example −
list1 = ['physics', 'chemistry',
1997, 2000]; list2 = [1, 2, 3,
4, 5 ]; list3 = ["a", "b", "c",
"d"];
Similar to string indices, list indices start at 0, and lists
can be sliced, concatenated and so on.
3.2.1 Accessing List Values
To access values in lists, use the square brackets for slicing
along with the index or indices to obtain value available at
that index.
For example −
lOMoARcPSD|19958008
list1 = ['physics', 'chemistry',
1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ",
list1[0] print "list2[1:5]: ",
list2[1:5]
Output:
list1[0]: physics
list2[1:5]: [2, 3, 4, 5]
Update:
list = ['physics', 'chemistry', 1997,
2000];
print "Value available at index 2 : "
print list[2] list[2] = 2001;
print "New value available at
index 2 : "
print list[2]
Output:
Value available at index 2 : 1997
New value available at index 2 :
2001 Delete: list1 = ['physics',
'chemistry', 1997, 2000]; print list1
del list1[2]; print "After deleting
value at index 2 : " print list1
['physics', 'chemistry', 1997, 2000]
lOMoARcPSD|19958008
Output:After deleting value at index 2 :
['physics', 'chemistry', 2000]
3.2.2 Basic in Operation
Python Expression Description
Results
len([1, 2, 3]) 3 Length
[1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6] Concatenation
['Hi!'] * 4 ['Hi!', 'Hi!', 'Hi!', Repetition
'Hi!']
3 in [1, 2, 3] True Membership
for x in [1, 2, 3]: 123 Iteration
print x,
3.2.3 Built in Functions & Methods
SN Function with Description
1 cmp(list1, list2) Compares elements of both lists.
2 len(list) Gives the total length of the list.
3 max(list) Returns item from the list with max
value.
4 min(list) Returns item from the list with min
value.
5 list(seq) Converts a tuple into list.
Python includes following list
methods
lOMoARcPSD|19958008
SN Methods with Description
1 [Link](obj) Appends object obj to list
2 [Link](obj) Returns count of how many times
obj occurs in list
3 [Link](seq) Appends the contents of seq to
list
4 [Link](obj) Returns the lowest index in list
that obj appears
5 [Link](index, obj) Inserts object obj into list at
offset index
6 [Link](obj=list[-1]) Removes and returns last
object or obj from list
7 [Link](obj) Removes object obj from list
8 [Link]() Reverses objects of list in place
9 [Link]([func]) Sorts objects of list, use compare
func if given
4. Loops & Conditional Statements
4.1 Loops
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 −
5.1.1 Loops Definition
lOMoARcPSD|19958008
Python programming language provides following types of loops
to handle looping requirements.
Loop Type Description
while loop Repeats a statement or group of statements while a
given condition is TRUE. It tests the condition before
executing the loop body.
for loop Executes a sequence of statements multiple times
and abbreviates the code that manages the loop
variable.
nested loops You can use one or more loop inside any another
while, for or do..while loop.
5.1.2 Loops Example
For Loop:
>>> for mynum in [1, 2, 3, 4, 5]:
print "Hello", mynum
Hello 1
Hello 2
Hello 3
Hello 4
Hello 5
While Loop:
>>> count = 0 >>>
while (count < 4):
print 'The count is:',
count count = count
+ 1 The count is: 0
The count is: 1
lOMoARcPSD|19958008
The count is: 2
The count is: 3
4.2 Conditional Statement
4.2.1 Conditional Statement Definition & Example
Decision making is anticipation of conditions occurring
while execution of the program and specifying actions
taken according to the conditions.
Decision structures evaluate multiple expressions which
produce TRUE or FALSE as outcome. You need to
determine which action to take and which statements to
execute if outcome is TRUE or FALSE otherwise.
Python programming language provides following types of decision
making statements. Click the following links to check their detail.
Loop Type Description
if statements An if statement consists of a boolean expression followed by
one or more statements.
if...else An if statement can be followed by an optional else
statement, which executes when the boolean expression
statements
is FALSE.
nested if You can use one if or else if statement inside
statements another if or else if statement(s).
lOMoARcPSD|19958008
Example:
If Statement:
>>> state = “Texas”
>>> if state ==
“Texas”: print “TX
TX
If...Else Statement:
>>> if state ==
“Texas” print “TX”
else:
print “[inferior
state]”
If...Else...If Statement:
>>> if name ==
“Paige” print “Hi
Paige!” elif name
== “Walker”:
print “Hi Walker!”
else:
print “Imposter!”
5.3.1 Function Syntax & Examples
Function blocks begin with the keyword def followed by the function name
and
lOMoARcPSD|19958008
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.
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.
Syntax - def
functionname( paramete
rs ): "function_docstring"
function_suite
return [expression]
5. Uses & Scope
5.1 Scope of Python
Science
• Bioinformatics System Administration
• -Unix
• -Web logic
• -Web sphere
Web Application Development
• -CGI
Testing scripts
lOMoARcPSD|19958008
5.2 What can we do With Python?
• System programming
• Graphical User Interface Programming
• Internet Scripting
• Component Integration
• Database Programming
• Gaming, Images, XML , Robot and more
5.3 Who Uses Python Today?
Python is being applied in real revenue-generating products by real
companies.
Google makes extensive use of Python in its web search system, and
employs Python’s creator.
Intel, Cisco, Hewlett-Packard, Seagate, Qualcomm, and IBM use Python
for hardware testing.
ESRI uses Python as an end-user customization tool for its popular GIS
mapping products.
The YouTube video sharing service is largely written in Python.
5.4 Why do People Use Python
The following primary factors cited by Python users
seem to be these –
• Python is object-oriented
o Structure supports such concepts as polymorphism, operation overloading,
and multiple inheritance.
• Indentation
o Indentation is one of the greatest future in Python.
• It's free (open source)
lOMoARcPSD|19958008
o Downloading and installing Python is free and easy
o Source code is easily accessible
• It's powerful
o Dynamic typing o Built-in types and tools
o Library utilities o Third party utilities (e.g. Numeric, NumPy, SciPy)
o Automatic memory management
Conclusion
I believe the trial has shown conclusively that it is both possible and
desirable to use Python as the principal teaching language –
• It is Free (as in both cost and source code).
• It is trivial to install on a Windows PC allowing students to take
their interest further. For many the hurdle of installing a Pascal or
C compiler on a Windows machine is either too expensive or too
Complicated.
• It is a flexible tool that allows both the teaching of traditional
procedural programming and modern OOP; It can be used to teach
a large number of transferable skills.
lOMoARcPSD|19958008
• It is a real-world programming language that can be and is used in
academia and the commercial world.
• It appears to be quicker to learn and, in combination with its many
libraries, this offers the possibility of more rapid student
development allowing the course to be made more challenging
and varied.
• and most importantly, its clean syntax offers increased
understanding and enjoyment for students.
Bibliography
1. [Link]
2. [Link]
3. [Link]
4. [Link]
5. [Link]
6. [Link]/3/library/[Link]
7. [Link]
8. [Link]
[Link]
9. [Link]
data_structures.htm
lOMoARcPSD|19958008