Professional Documents
Culture Documents
Introduction of Python
Introduction of Python
Python is a high-level, interpreted, interactive and object-oriented scripting language. Python is designed to be highly readable. It uses English
keywords frequently where as other languages use punctuation, and it has fewer syntactical constructions than other languages.
Python is Interpreted − Python is processed at runtime by the interpreter. You do not need to compile your program before executing it. This
is similar to PERL and PHP.
Python is Interactive − You can actually sit at a Python prompt and interact with the interpreter directly to write your programs.
Python is Object-Oriented − Python supports Object-Oriented style or technique of programming that encapsulates code within objects.
Python is a Beginner's Language − Python is a great language for the beginner-level programmers and supports the development of a wide
range of applications from simple text processing to WWW browsers to games.
Characteristics of Python
It provides very high-level dynamic data types and supports dynamic type checking.
It can be easily integrated with C, C++, COM, ActiveX, CORBA, and Java.
APPLICATIONS OF PYTHON
Easy-to-learn − Python has few keywords, simple structure, and a clearly defined syntax. This allows the student to pick up the language quickly.
A broad standard library − Python's bulk of the library is very portable and cross-platform compatible on UNIX, Windows, and Macintosh.
Interactive Mode − Python has support for an interactive mode which allows interactive testing and debugging.
Portable − Python can run on a wide variety of hardware platforms and has the same interface on all platforms.
GUI Programming − Python supports GUI applications that can be created and ported to many system calls, libraries and windows systems, such as
Windows MFC, Macintosh, and the X Window system of Unix.
Scalable − Python provides a better structure and support for large programs than shell scripting.
TO PRINT IN PYTHON:
Python does not allow punctuation characters such as @, $, and % within identifiers. Python is a case sensitive
programming language. Thus, Manpower and manpower are two different identifiers in Python.
Class names start with an uppercase letter. All other identifiers start with a lowercase letter.
Starting an identifier with a single leading underscore indicates that the identifier is private.
Starting an identifier with two leading underscores indicates a strongly private identifier.
If the identifier also ends with two trailing underscores, the identifier is a language-defined special name.
RESERVED WORDS
The following list shows the python keywords. These are reserved words and you cannot use them as constant or variable or any
other identifier names. All the python keywords contain lowercase letters only.
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.
The operand to the left of the = operator is the name of the variable and the operand to the right of the = operator is the value stored in the variable. For example
−
#!/usr/bin/python
print counter
print miles
print name
Here, 100, 1000.0 and "John" are the values assigned to counter, miles, and name variables, respectively. This produces the following result −
100
1000.0
John
Multiple Assignment
Python allows you to assign a single value to several variables simultaneously. For example −
a=b=c=1
Here, an integer object is created with the value 1, and all three variables are assigned to the same memory location. You can also assign
multiple objects to multiple variables. For example −
a,b,c = 1,2,"john"
Here, two integer objects with values 1 and 2 are assigned to variables a and b respectively, and one string object with the value "john" is
assigned to the variable c.
The data stored in memory can be of many types. For example, a person's age is stored as a numeric value and his or her address is stored as
alphanumeric characters. Python has various standard data types that are used to define the operations possible on them and the storage method
for each of them.
Numbers
String
List
Tuple
Dictionary
Python Numbers
Number data types store numeric values. Number objects are created when you assign a value to them. For example −
q=1
y = 10.0
You can also delete the reference to a number object by using the del statement. The syntax of the del statement is −
del var1[,var2[,var3[....,varN]]]]
You can delete a single object or multiple objects by using the del statement. For example −
del var
long (long integers, they can also be represented in octal and hexadecimal)
Examples
Strings in Python are identified as a contiguous set of characters represented in the quotation marks. Python allows for either pairs of single or double quotes. Subsets of
strings can be taken using the slice operator ([ ] and [:] ) with indexes starting at 0 in the beginning of the string and working their way from -1 at the end.
The plus (+) sign is the string concatenation operator and the asterisk (*) is the repetition operator. For example −
#!/usr/bin/python
Hello World!
llo
llo World!
Hello World!TEST
Python Lists
Lists are the most versatile of Python's compound data types. A list contains items separated by commas and enclosed within square brackets ([]). To some extent, lists
are similar to arrays in C. One difference between them is that all the items belonging to a list can be of different data type.
The values stored in a list can be accessed using the slice operator ([ ] and [:]) with indexes starting at 0 in the beginning of the list and working their way to end -1. The
plus (+) sign is the list concatenation operator, and the asterisk (*) is the repetition operator. For example −
#!/usr/bin/python
abcd
[786, 2.23]
A tuple is another sequence data type that is similar to the list. A tuple consists of a number of values separated by commas. Unlike lists, however, tuples are enclosed
within parentheses.
The main differences between lists and tuples are: Lists are enclosed in brackets ( [ ] ) and their elements and size can be changed, while tuples are enclosed in
parentheses ( ( ) ) and cannot be updated. Tuples can be thought of as read-only lists. For example −
#!/usr/bin/python
print tuple[1:3] # Prints elements of the tuple starting from 2nd till 3rd
print tuple[2:] # Prints elements of the tuple starting from 3rd element
abcd
(786, 2.23)
Python's dictionaries are kind of hash table type. They work like associative arrays or hashes found in Perl and consist of key-value pairs. A dictionary key can be almost
any Python type, but are usually numbers or strings. Values, on the other hand, can be any arbitrary Python object.
Dictionaries are enclosed by curly braces ({ }) and values can be assigned and accessed using square braces ([]). For example −
#!/usr/bin/python
dict = {}
This is one
This is two
Sometimes, you may need to perform conversions between the built-in types. To convert between types, you simply use the type name as a function.
There are several built-in functions to perform conversion from one data type to another. These functions return a new object representing the converted value.
int(x [,base])
long(x [,base] )
float(x)
complex(real [,imag])
str(x)
repr(x)
7
eval(str)
unichr(x)
15
ord(x)
16
hex(x)
17
oct(x)
Consider the expression 4 + 5 = 9. Here, 4 and 5 are called operands and + is called operator.
Types of Operator
Arithmetic Operators
Assignment Operators
Logical Operators
Bitwise Operators
Membership Operators
Identity Operators
PYTHON - DECISION MAKING
1 if statements
An if statement consists of a boolean expression followed by one or more statements.
2 if...else statements
An if statement can be followed by an optional else statement, which executes when
the boolean expression is FALSE.
3 nested if statements
You can use one if or else if statement inside another if or else if statement(s).
#!/usr/bin/python
var = 100
if ( var == 100 ) : print "Value of expression is 100"
print "Good bye!"
When the above code is executed, it produces the following result −
• A loop statement allows us to execute a statement or group of statements multiple times. Python programming
language provides following types of loops to handle looping requirements.
• 1 while loop
• Repeats a statement or group of statements while a given condition is TRUE. It tests the condition before executing
the loop body.
• 2 for loop
• Executes a sequence of statements multiple times and abbreviates the code that manages the loop variable.
• 3 nested loops
• You can use one or more loop inside any another while, for or do..while loop.
• Loop Control Statements
• Loop control statements change execution from its normal sequence. When execution leaves a scope, all automatic objects that were created in that
scope are destroyed.
• Python supports the following control statements. Click the following links to check their detail.
• 1 break statement
• Terminates the loop statement and transfers execution to the statement immediately following the loop.
• 2 continue statement
• Causes the loop to skip the remainder of its body and immediately retest its condition prior to reiterating.
• 3 pass statement
• The pass statement in Python is used when a statement is required syntactically but you do not want any command or code to execute.
FLOWCHARTS
Flowcharts graphically represent the flow of a program. There are four basic shapes
used in a flow chart. Each shape has a specific use:
oval: start / end
parallelogram: input / output
rectangle: calculations
diamond: selection structures
# start
num = input('Enter a number: ')
num = float(num)
if num>0:
print('num greater than zero')
if num<0:
print('num less than zero')
print('Done')
# end
PSEUDO CODE
Pseudo code: It’s simply an implementation of an algorithm in the form of annotations and informative text written in plain English. It has no
syntax like any of the programming language and thus can’t be compiled or interpreted by the computer.
Advantages of Pseudocode
Improves the readability of any approach. It’s one of the best approaches to start implementation of an algorithm.
Acts as a bridge between the program and the algorithm or flowchart. Also works as a rough documentation, so the program of one developer can
be understood easily when a pseudo code is written out. In industries, the approach of documentation is essential. And that’s where a pseudo-code
proves vital.
The main goal of a pseudo code is to explain what exactly each line of a program should do, hence making the code construction phase easier for
the programmer.
How to write a Pseudo-code?
Arrange the sequence of tasks and write the pseudocode accordingly.
Start with the statement of a pseudo code which establishes the main goal or the aim.
WHAT IS A DECISION TREE?
•
• Decision tree as the name suggests it is a flow like a tree structure that works on
the principle of conditions. It is efficient and has strong algorithms used for
predictive analysis. It has mainly attributed that include internal nodes, branches
and a terminal node.
•
• Every internal node holds a “test” on an attribute, branches hold the conclusion of
the test
• Branches - Division of the whole tree is called branches.
• Root Node - Represent the whole sample that is further divided.
• Splitting - Division of nodes is called splitting.
• Terminal Node - Node that does not split further is called a terminal node.
• Decision Node - It is a node that also gets further divided into different sub-nodes being a sub
node.
• Pruning - Removal of subnodes from a decision node.
• Parent and Child Node - When a node gets divided further then that node is termed as parent node
whereas the divided nodes or the sub-nodes are termed as a child node of the parent node.
• How does the Decision Tree algorithm Work?
• In a decision tree, for predicting the class of the given dataset, the algorithm starts from the root node of the tree. This
algorithm compares the values of root attribute with the record (real dataset) attribute and, based on the comparison,
follows the branch and jumps to the next node.
• For the next node, the algorithm again compares the attribute value with the other sub-nodes and move further. It
continues the process until it reaches the leaf node of the tree. The complete process can be better understood using
the below algorithm:
• Step-1: Begin the tree with the root node, says S, which contains the complete dataset.
• Step-2: Find the best attribute in the dataset using Attribute Selection Measure (ASM).
• Step-3: Divide the S into subsets that contains possible values for the best attributes.
• Step-4: Generate the decision tree node, which contains the best attribute.
• Step-5: Recursively make new decision trees using the subsets of the dataset created in step -3. Continue this process
until a stage is reached where you cannot further classify the nodes and called the final node as a leaf node.
• https://www.javatpoint.com/machine-learning-decision-tree-classification-algorithm
• What are the Advantages and Disadvantages of Decision Trees?
•
• Advantages
•
• Results that are generated from DT does not require any statistical or mathematics knowledge to be explained.
•
• Disadvantages
•
• Logics get transformed if there are even small changes in training data.