0% found this document useful (0 votes)
1 views33 pages

python_notes

The document outlines a course on Python programming offered by Decent Institute, covering fundamental concepts such as variables, data types, basic syntax, functions, and conditional statements. It emphasizes Python's advantages in various fields like data science and finance, highlighting its user-friendly nature and powerful capabilities. The course aims to equip learners with essential programming skills through structured lessons and practical examples.

Uploaded by

hatim
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
1 views33 pages

python_notes

The document outlines a course on Python programming offered by Decent Institute, covering fundamental concepts such as variables, data types, basic syntax, functions, and conditional statements. It emphasizes Python's advantages in various fields like data science and finance, highlighting its user-friendly nature and powerful capabilities. The course aims to equip learners with essential programming skills through structured lessons and practical examples.

Uploaded by

hatim
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 33

DECENT INSTITUTE

FOR ALL TYPES OF COMPUTER


COURSES
FF-12, AMBER COMPLEX, AJWA
ROAD, VADODARA-19. M. 98257
54652

Intro to Python
Programming

Course Notes
2

Table of
Contents
Abstract............................................................................................................4
1. Introduction to Programming........................................................................5
2.Why Python?.........................,........................................................................5
3. Python Variables and Data Types.......................................................................6
3.1.............................................................................................................. Variables
..................................................................................................................6
3.2 Numbers and Boolean Values..................................................................7
3.3 Strings......................................................................................................8
4. Basic Python Syntax....................................................................................10
4.1 Arithmetic Operators.............................................................................10
4.2 The Double Equality Sign.......................................................................11
4.3 Reassign Values.....................................................................................11
4.4 Add Comments......................................................................................12
4.5 Line Continuation...................................................................................12
4.6 Indexing Elements.................................................................................13
4.7 Structure Your Code with Indentation..........................................................14
4.8 Comparison Operators...........................................................................14
4.9 Logical Operators...................................................................................15
4.10 Identity Operators................................................................................15
5. Conditional Statements...............................................................................16
5.1 Introduction to the IFstatement.............................................................16
5.2 Add an ELSE statement.........................................................................17
5.3 Else if, for Brief – ELIF............................................................................18
5.4 A Note on Boolean Values......................................................................19
6. Functions....................................................................................................20
6.1 Defining a Function in Python................................................................20
6.2 Creating a Function with a Parameter........................................................21
6.3 print vs. return.......................................................................................22
6.4 Using a Function in Another Function....................................................23
6.5 Creating Functions Containing a Few Arguments........................................23
6.6 Notable Built-In Functions in Python...........................................................24
7. Sequences...................................................................................................25
7.1 Lists.......................................................................................................26
7.2 Help Yourself with Methods...................................................................26
7.3 List Slicing..............................................................................................27
7.4 Tuples....................................................................................................28
7.5 Dictionaries............................................................................................29
3
8.Iteration.......................................................................................................30
8.1 For- Loops..............................................................................................30
8.2 While- Loops and Incrementing.............................................................31
8.3 Create Lists with the range() Function...................................................32
8.4 Use Conditional Statements and Loops Together........................................33
8.5 All In - Conditional Statements, Functions, and Loops.................................33
DECENT INSTITUTE 4

Abstract

Python is one of the most widely used programming languages among data
scientists. This course will show you the technical advantages it has over other
programming languages. You will start working with its modules for scientific
computing, and you will begin to understand why these functionalities make
Python the preferred choice in finance, econometrics, economics, data science,
and machine learning.
You will learn about Python’s technical advantages, specific features, modules,
functionalities, and more:
• Basic Python Syntax
• Create and Use functions
• Work with variables, operators, and conditional statements
• Study Python sequences and iterations
• Import modules in Python

Keywords: Python, conditional statements, import modules, python syntax, strings,


for loops, while loops
DECENT INSTITUTE 5

1. Introduction to Programming

The computer understands 1s and 0s only. To communicate a real-life problem to


the computer, you need to create a specific type of text, called a source code
or a human readable code, that software can read and then process to the
computer in 1s and 0s.

Term Definition

Program a sequence of instructions that designate how


to execute a computation

Programming taking a task and writing it down in a


programming language that the computer can
understand and execute

2.Why Python?

Python is an open-source, general-purpose high-level programming language.

Term Definition

Open-source software Open-source means it is free. Python has a


large and active scientific community with
(OSS) access to the software’s source code and
contributes to its continuous development
and upgrading, depending on users’ needs

General-purpose There is a broad set of fields where Python


could be applied – web programming,
analysis of financial data, analysis of big
data, and more.

High-level High-level languages employ syntax a lot closer


to human logic, which makes the language
easier to learn and implement.

Python’s popularity lies on two main pillars. One is that it is an easy-to-learn


programming language designed to be highly readable, with a syntax quite
clear and intuitive. And the second reason is its user-friendliness does not take
away from its strength. Python can execute a variety of complex computations and
is one of the most powerful programming languages preferred by specialists.
DECENT INSTITUTE 6

3. Python Variables and Data Types

3.1Variables

One of the main concepts in programming is variables. They are your best
friends. You will deal with them all the time. You will use them to store
information. They will represent your data input.

Let’s say you want to have a variable x that is equal to the value of 5 and then ask
the computer to tell you the value of that variable. Type x equals 5.
Write x and then execute. And here’s the result – 5.

An alternative way to execute the instruction that will provide the value we
assigned to y would be to use the print command.
If we say “print(y)”, the machine will simply execute this command and provide
the value of y as a statement.
DECENT INSTITUTE 7

3.2Numbers and Boolean Values

When programming, not only in Python, if you say that a variable has a numeric
value, you are being ambiguous. The reason is that numbers can be integers or
floating points, also called floats, for instance.

Term Definition

Integer Positive or negative whole numbers


without a decimal point
Example: 5, 10, -3, -15

Floating point (float) Real numbers. Hence, they have a decimal point
Example: 4.75, -5.50, 11.0

Boolean value a True or False value, corresponding to the


machine’s logic of understanding 1s and 0s, on
or off, right or wrong, true or false.
Example: True, False
DECENT INSTITUTE 8

3.3Strings

Strings are text values composed of a sequence of characters.

Type single or double


quotation marks around the
name George. Python
displays ‘George’ if you don’t
use the print command.
Should you use print, the
output will be shown with no
quotes – you’ll be able to see
plain text.

Strings are text values composed of a sequence of characters.


To type “I’m fine” you’ll need
the apostrophe in the English
syntax, not for the Pythonic
one.
In such situations, you can
distinguish between the
two symbols – put the text
within double quotes and
leave the apostrophe, which
technically coincides with the
single quote between I and
M.

An alternative way to do that would be to leave the quotes on the sides and
place a back slash before the apostrophe within the phrase. This backslash is
called an escape character, as it changes the interpretation of characters
immediately after it.

To state “press “Enter””, the outer symbols must differ from the inner ones. Put
single quotes on the sides.
DECENT INSTITUTE 9

Strings are text values composed of a sequence of characters.

Say you wish to print “Red car” on the same line. “Add” one of the strings to the
other by typing in a plus sign between the two. Put a blank space before the
second apostrophe of the first word.
(In [17])

Type “print ‘Red’”, and then put a comma, which is called a trailing comma,
and Python will print the next word, ‘car’, on the same line, separating the two
words with a blank space. (In [18])
DECENT INSTITUTE 10

4. Basic Python Syntax

4.1Arithmetic Operators

In the equation you see here, 1 and 2 are called operands, The plus and minus
signs are called operators, and given they also represent arithmetic operations,
they can be called arithmetic operators.

Operator Description

+ Addition

- Subtraction

/ Division
Note: If you want to divide 16 by 3, when you
use Python 2, you should look for the quotient
of the float 16 divided by 3 and not of the
integer 16 divided by 3. So, you should either
transform the number into a float or type it as
a float directly.
% Returns remainder

* Multiplication

** Performs power calculation


DECENT INSTITUTE 11

4.2The Double Equality Sign

The equals sign when programming


means “assign” or “bind to”. For
instance, “assign 5 to the power of 3
to the variable y”; “bind 5 to the
power of 3 to y”. From that moment
for the computer, y will be equal to
125.

When you mean equality between


values and not assignment of values
in Python, you’ll need the double
equality sign. Anytime you use it,
you will obtain one of the two possible
outcomes – “True” or “False”.

4.3Reassign Values

If you assign the value of 1 to a


variable z, your output after
executing z will be
1. After that, if you assign 3 to the
same variable z, z will be equal to 3,
not 1 anymore.
Python reassigns values to its
objects. Therefore, remember the last
command is valid, and older
commands are overwritten.
DECENT INSTITUTE 12

4.4Add Comments

Comments are sentences not executed by the computer; it doesn’t read them
as instructions. The trick is to put a hash sign at the beginning of each line you
would like to insert as a comment.
If you would like to leave a comment on two lines, don’t forget to place the hash
sign at the beginning of each line.

4.5Line Continuation

You might prefer to send part of the code to the next line. So, 2.0 times 1.5 plus
5 could be written in two lines, and the machine could still read it as one
command. This could be achieved by putting a back slash where you would like
the end of the first line to be. It indicates you will continue the same command
on a new line.
DECENT INSTITUTE 13

4.6Indexing Elements

Is it possible to extract the letter “d”?


Yes, you can do that by using square brackets. And within them, you should
specify the position of the letter we would like to be extracted.

Note:
Make sure you don’t mistake brackets for parentheses or
braces: parentheses – ()
brackets –
[] braces–
{} !

A very important thing you should remember is that, in Python, we count from 0,
not from 1! 0, 1, 2, 3, 4, and so on. That’s why I’ll ask for the 4th letter, ‘d’, by writing 3
here.
DECENT INSTITUTE 14

4.7Structure Your Code with Indentation

The way you apply indentation in practice is important, as this will be the only way to
communicate your ideas to the machine properly.

Def and Print form two separate and, written in this way, clearly distinguishable
blocks of code or blocks of commands.

Everything that regards the function is written with one indentation to the inside.
Once you decide to code something else, start on a new line with no indentation.
The blocks of code are more visible, and this clarifies the logic you are applying
to solve your problem.

4.8Comparison Operators

Operator Description

== Verifies the left and right side of an equality are


equal

!= Verifies the left and right side of an equality


are not equal

> Greater than

< Less than

>= Greater than or equal to

<= Less than or equal to


DECENT INSTITUTE 15

4.9Logical Operators

Briefly, the logical operators in Python are the words “NOT”, “AND”, and “OR”.
They compare a certain amount of statements and return Boolean values – “True” or
“False”
– hence their second name, Boolean operators.

Operator Description

not Leads to the opposite of the given statement


Example: “not True” leads to False

and Checks whether the two statements around it


are “True”
Example: “True and False” leads to False

or Checks whether at least one of the two


statements is “True”
Example: “False or True” leads to True

You must respect the order of importance of these three operators. It is: “not”
comes first, then we have “and”, and finally “or”.

4.10Identity Operators

The identity operators are the words “is” and “is not”. They function similar
to the double equality sign and the exclamation mark and equality sign we saw
earlier.
DECENT INSTITUTE 16

5. Conditional Statements

5.1Introduction to the IF statement

A prominent example of conditional statements in Python is the “IF”


statement. What you can use it for is intuitive, but it is very important to learn
the syntax.

The graph could help you imagine the process of the conditionals. Before it
displays the outcome of the operation, the machine follows these logical steps.
If the conditional code is not to be executed because the if-condition is not true,
the program will directly lead you to some other output or, as it is in this case, to
nothing. After any of the two situations, the machine will go to the next black
point and will progress from there on.
DECENT INSTITUTE 17

5.2Add an ELSE statement

“ELSE” will tell the computer to execute the successive command in all other cases.

Instead of leading to no output, if the condition is false, we will get to an else


code. Regardless whether the initial condition is satisfied, we will get to the end
point, so the computer has concluded the entire operation and is ready to
execute a new one.
DECENT INSTITUTE 18

5.3Else if, for Brief - ELIF

If y is not greater than 5, the computer will think: “else if y is less than 5”, written
“elif y is less than 5”, then I will print out “Less”.

Know that you can add as many elif statements as you need.

A very important detail you


should try to remember is the
computer always reads your
commands from top to
bottom. Regardless of the
speed at which it works,
it executes only one command
at a time. Scientifically
speaking, the instructions we
give to the machine are part
of a control flow. This is
something like the flow of the
logical thought of the computer,
the way the computer thinks –
step by step, executing the steps
in a rigid order.

When it works with a conditional statement, the computer’s task will be to


execute a specific command once a certain condition has been satisfied. It
will read your
commands from the if- statement at the top, through the elif-statements in the
middle, to the else- statement at the end. The first moment the machine finds a
satisfied condition, it will print the respective output and will execute no other
part of the code from this conditional.
DECENT INSTITUTE 19

5.4A Note on Boolean Values

From a certain perspective, everything in a computer system is Boolean,


comprising sequences of 0s and 1s, “False” and “True”. This is why we are
paying attention to the Boolean value. It helps us understand general
computational logic and the way conditionals work in Python.

Basically, after you insert your if-statement, the computer will attach a Boolean value
to it. Depending on the value of its outcome, “True” or “False”, it will produce
one of the suggested outputs, “Correct” or “Incorrect”.
DECENT INSTITUTE 20

6. Functions

6.1 Defining a Function in Python

Python’s functions are an invaluable tool for programmers.

To tell the computer you are about to create a function, just write def at the
beginning of the line. Def is neither a command nor a function. It is a keyword.
To indicate this, Jupyter will automatically change its font color to green. Then,
you can type the name of the function you will use. Then you can add a pair of
parentheses. Technically, within these parentheses, you could place the
parameters of the function if it requires you to have any. It is no problem to
have a function with zero parameters.

To proceed, don’t miss to put a colon after the name of the function.
Since it is inconvenient to continue on the same line when the function becomes
longer, it is much better to build the habit of laying the instructions on a new line,
with an indent again. Good legibility counts for a good style of coding!
DECENT INSTITUTE 21

6.2Creating a Function with a Parameter

Don’t forget to return a value from the function. We will need plus_ten(a) to do
a specific calculation for us and not just print something.
Pay attention to the following. When we define a function, we specify in
parentheses a parameter. In the plus_ten() function, “a” is a parameter.
Later, when we call this function, it is correct to say we provide an argument,
not a parameter. So we can say “call plus_ten() with an argument of 2, call
plus_ten() with an argument of 5”.

In programming, return regards the value of y; it just says to the machine “after
the operations executed by the function f, return to me the value of y”.
“Return” plays a connection between the second and the third step of the
process. In other words, a function can take an input of one or more
variables and return a single output composed of one or more values. This
is why “return” can be used only once in a function.

People often confuse


print and return, and the
type of situations when
we can apply
them.
DECENT INSTITUTE 22

6.3print vs. return

print() takes a statement or, better, an object, and provides its printed
representation in the output cell. It just makes a certain statement visible to the
programmer.
Otherwise, print does not affect the calculation of the output.
Differently, return does not visualize the output. It specifies what a certain function
is supposed to give back.
It’s important you understand what each of the two keywords does. This will help
you a great deal when working with functions.

6.4 Using a Function in Another Function

It isn’t a secret we can have a function within the function.


In with_bonus(w_hours), you can return directly the wage with working hours as
an output, which would be the value obtained after the wage function has been
run, plus 50.
DECENT INSTITUTE 23

6.5Creating Functions Containing a Few Arguments

You can work with more than one parameter in a function. The way this is
done in Python is by enlisting all the arguments within the parentheses,
separated by a comma.

You can call the function for, say, 10, 3, and 2. You will get 4.
Just be careful with the order in which you state the values. In this case, we
assigned 10 to the variable a, 3 to b, and 2 to c.

Otherwise, the order won’t matter if and only if you specify the names of the
variables within the parentheses.
DECENT INSTITUTE 24

6.6Notable Built-In Functions in Python

When you install Python on your computer, you are also installing some of its
built-in functions. This means you won’t need to type their code every time
you use them – these functions are already on your computer and can be
applied directly.

Function Description

type() obtains the type of variable you use as an


argument

int() transforms its argument in an integer data type

float() transforms its argument in a float data type

str() transforms its argument in a string data type

max() Returns the highest value from a


sequence of numbers

min() Returns the lowest value from a


sequence of numbers

abs() Allows you to obtain the absolute value of


its argument

sum() Calculates the sum of all the elements in a list


designated as an argument

round(x,y) returns the float of its argument (x), rounded


to a specified number of digits (y) after the
decimal point

pow(x,y) returns x to the power of y

len() returns the number of elements in an object


DECENT INSTITUTE 25

7. Sequences

7.1Lists

A list is a type of sequence of data points such as floats, integers, or strings.

You can access the Participants list by indexing the value 1. This means you have
extracted the second of the elements in this list variable [‘Leila’].
In addition, there is a way to get to the last element from your list – start counting
from the end towards the beginning. Then, you’d need the minus sign before the
digit and don’t fall in the trap of thinking we begin enumerating from 0 again! To
obtain “Cate”, you have to write -1.
DECENT INSTITUTE 26

7.2Help Yourself with Methods

Here is the syntax that allows you to call ready-made built-in methods that you do not
have to create on your own and can be used in Python directly.
After the name of the object, which in this case is the “Participants” list, you must
put a dot called a dot operator. The dot operator allows you to call on or
invoke a certain method. To call the method “append”, state its name, followed
by parentheses.

To insert the name “Dwayne” in our list, you must put the string “Dwayne” in
inverted commas between the parentheses.

Alternatively, the same result can be achieved by using the .extend() method.
This time, within the parentheses, you’ll have to add brackets, as you are going
to extend the Participants list by adding a list specified precisely in these
parentheses.
DECENT INSTITUTE 27

7.3List Slicing

Many of the problems that must be solved will regard a tiny portion of the data, and
in such cases, you can apply slicing.

Imagine you want to use the “Participants” list to obtain a second much smaller list that
contains only two names - Leila and Maria. In Pythonic, that would mean to extract the
elements from the first and second position. To access these elements, we will open
square brackets, just as we did with indexing, and write 1 colon 3. The first number
corresponds precisely to the first position of interest, while the second number is one
position above the last position we need.
DECENT INSTITUTE 28

7.4Tuples

Tuples are another type of data sequences, but differently to lists, they are
immutable. Tuples cannot be changed or modified; you cannot append or
delete elements.

The syntax that indicates you are having a tuple and not a list is that the tuple’s
elements are placed within parentheses and not brackets.

The tuple is the default sequence type in Python, so if you enlist three values
here, the computer will perceive the new variable as a tuple. We could also say
the three values will be packed into a tuple.
For the same reason, you can assign a number of values to the same number of
variables. On the left side of the equality sign, add a tuple of variables, and on
the right, a tuple of values. That’s why the relevant technical term for this activity is
tuple assignment.
DECENT INSTITUTE 29

7.5 Dictionaries

Dictionaries represent another way of storing data.

Each value is associated with a certain key. More precisely, a key and its
respective value form a key-value pair.
After a certain dictionary has been created, a value can be accessed by its key,
instead of its index!

Similarly, as we could do with lists, we can add a new value to the dictionary
in the following way: the structure to apply here is dictionary name, new key
name within brackets, equality sign, and the name of the new value.
DECENT INSTITUTE 30

8. Iteration

8.1For Loops

Iteration is a fundamental building block of all programs. It is the ability to execute


a certain code repeatedly.

The list “even” contains all the even numbers from 0 to 20. “for n in even”, colon,
which would mean for every element n in the list “even”, do the following: print that
element.

The command in the loop body is performed once for each element in the even list.
DECENT INSTITUTE 31

8.2While Loops and Incrementing

The same output we obtained in the previous lesson could be achieved after
using a while loop, instead of a for loop. However, the structure we will use will
be slightly different.

Initially, we will set a variable x equal to zero. And we’ll say: while this value is
smaller than or equal to 20, print x.
We want to get the loop to end. What is supposed to succeed, the loop body in the
“while” block, is a line of code that specifies a change in x or what has to happen to
x after it is printed. In our case, we will tell the computer to bind x to a value equal to
x + 2.

In programming terms, adding the same number on top of an existing variable


during a loop is called incrementing. The amount being progressively added is
called an increment. In our case, we have an increment of 2.

The Pythonic syntax offers a special way to indicate incrementing: x += 2


DECENT INSTITUTE 32

8.3Create Lists with the range() Function

When you need to randomize data points and lists with data points, you can use
Python’s built-in range function.

The syntax of the function is the following:

The stop value is a required input, while the start and step values are optional.
If not provided, the start value will be automatically replaced with a 0, and the
step value would be assumed to be equal to 1.

range(10) will provide a list


of 10 elements, starting from
0, implied after not
indicating a start value, and
ending at the tenth
consecutive number – 9. In
another cell, if in the
“range” function we declare
as arguments 3 and 7, for
instance, Python will accept
3 as a start value, and 7 as
a stop value of the range.
So, we’ll have 4 elements –
3, 4, 5, and 6.

To specify a step value in a range, the other two arguments must be chosen as
well. range(1,20,2) creates a list with all the odd numbers from 1 to 19 included. It
will start with the number 1, and the list will end with number 19 (which equals
the stop value 20 minus 1), stating only the odd numbers.
8.4Use Conditional Statements and Loops Together

You create an iteration that includes a conditional in the loop body. You can tell
the computer to print all the even values between 0 and 19 and state “Odd” in
the places where we have odd numbers.

Let’s translate this into computational steps.


If x leaves a remainder of 0 when divided by 2, which is the same as to say “if x
is even”, then print x on the same line. “Else”, which means unless x is even, or if x
is odd, print “Odd”.

8.5 All In – Conditional Statements, Functions, and Loops

We use iterations when we have to go through variables that are part of a list.

You can count the number of items whose value is less than 20 in a list. First,
define a function that takes as an argument numbers, where “numbers” will be a
certain list variable. The trick is to create a variable that, so to speak, “departs”
from 0. Let’s call it total.
The idea is that, when certain conditions are verified, total will change its value.

This is why, in such a situation, it is appropriate to call this variable a rolling


sum.

More technically, when we consider x in the numbers list, if it is smaller than 20,
we will increment the total by 1 and finally return the total value. This means that, if x
is less than 20, total will grow by 1, and if x is greater than or equal to 20, total will
not grow. So, for a given list, this count function will return the amount of numbers
smaller than 20.

You might also like