Lesson 5
Lesson 5
You will also learn how to wait for user input and display the information using
appropriate statements. Lastly, you will learn the import function.
LESSON PROPER
TYPE CONVERSION
The process of converting the value of one data type (integer, string, float, etc.) to
another data type is called type conversion. Python has two types of type conversion.
In Implicit type conversion, Python automatically converts one data type to another data
type. This process doesn't need any user involvement.
Let's see an example where Python promotes the conversion of the lower data type
(integer) to the higher data type (float) to avoid data loss.
print("datatype of num_int:",type(num_int))
print("datatype of num_flo:",type(num_flo))
print("Value of num_new:",num_new)
print("datatype of num_new:",type(num_new))
We add two variables num_int and num_flo, storing the value in num_new.
In the output, we can see the data type of num_int is an integer while the data
type of num_flo is a float.
Also, we can see the num_new has a float data type because Python always
converts smaller data types to larger data types to avoid the loss of data.
Now, let's try adding a string and an integer, and see how Python deals with it.
print(num_int+num_str)
As we can see from the output, we got TypeError. Python is not able to use
Implicit Conversion in such conditions.
However, Python has a solution for these types of situations which is known as
Explicit Conversion.
In Explicit Type Conversion, users convert the data type of an object to required data
type. We use the predefined functions like int(), float(), str(), etc. to perform explicit type
conversion.
This type of conversion is also called typecasting because the user casts (changes) the
data type of the objects.
Syntax :
<required_datatype>(expression)
Typecasting can be done by assigning the required data type function to the expression.
num_str = int(num_str)
print("Data type of num_str after Type Casting:",type(num_str))
After converting num_str to an integer value, Python is able to add these two
variables.
1. Type Conversion is the conversion of object from one data type to another data
type.
4. Explicit Type Conversion is also called Type Casting, the data types of objects are
converted using predefined functions by the user.
5. In Type Casting, loss of data may occur as we enforce the object to a specific data
type.
We use the print() function to output data to the standard output device (screen). We
can also output data to a file, but this will be discussed later.
An example of its use is given below.
The value of a is 5
In the second print() statement, we can notice that space was added between
the string and the value of variable a. This is by default, but we can change it.
The actual syntax of the print() function is:
Here, objects are the value(s) to be printed. The sep separator is used between the
values. It defaults into a space character. After all values are printed, end is printed. It
defaults into a new line.
The file is the object where the values are printed and its default value
is sys.stdout (screen). Here is an example to illustrate this.
print(1, 2, 3, 4)
print(1, 2, 3, 4, sep='*')
print(1, 2, 3, 4, sep='#', end='&')
Output
1234
1*2*3*4
1#2#3#4&
Output formatting
Sometimes we would like to format our output to make it look attractive. This can be
done by using the str.format() method. This method is visible to any string object.
>>> x = 5; y = 10
>>> print('The value of x is {} and y is {}'.format(x,y))
The value of x is 5 and y is 10
Here, the curly braces {} are used as placeholders. We can specify the order in which they
are printed by using numbers (tuple index).
print('I love {0} and {1}'.format('bread','butter'))
print('I love {1} and {0}'.format('bread','butter'))
Output
I love bread and butter
I love butter and bread
We can even use keyword arguments to format the string.
>>> print('Hello {name}, {greeting}'.format(greeting = 'Goodmorning', name = 'John'))
Hello John, Goodmorning
We can also format strings like the old sprintf() style used in C programming language.
We use the % operator to accomplish this.
>>> x = 12.3456789
>>> print('The value of x is %3.2f' %x)
The value of x is 12.35
>>> print('The value of x is %3.4f' %x)
The value of x is 12.3457
PYTHON INPUT
Up until now, our programs were static. The value of variables was defined or hard coded
into the source code. To allow flexibility, we might want to take the input from the user.
In Python, we have the input() function to allow this. The syntax for input() is:
input([prompt])
where prompt is the string we wish to display on the screen. It is optional.
This same operation can be performed using the eval() function. But eval takes it further.
It can evaluate even expressions, provided the input is a string
>>> int('2+3')
Traceback (most recent call last):
File "<string>", line 301, in runcode
File "<interactive input>", line 1, in <module>
ValueError: invalid literal for int() with base 10: '2+3'
>>> eval('2+3')
5
PYTHON IMPORT
When our program grows bigger, it is a good idea to break it into different modules.
A module is a file containing Python definitions and statements. Python modules have a
filename and end with the extension .py.
For example, we can import the math module by typing the following line:
import math
We can use the module in the following ways:
import math
print(math.pi)
Output
3.141592653589793
Now all the definitions inside math module are available in our scope. We can also
import some specific attributes and functions only, using the from keyword. For example:
While importing a module, Python looks at several places defined in sys.path. It is a list
of directory locations.
>>> import sys
>>> sys.path
['',
'C:\\Python33\\Lib\\idlelib',
'C:\\Windows\\system32\\python33.zip',
'C:\\Python33\\DLLs',
'C:\\Python33\\lib',
'C:\\Python33',
'C:\\Python33\\lib\\site-packages']
SUMMARY
Python has two types of type conversion: Implicit Type Conversion and Explicit Type
Conversion.
In Implicit type conversion, Python automatically converts one data type to another
data type.
In Explicit Type Conversion, users convert the data type of an object to required data
type.
Use the print() function to output data to the standard output device (screen).
Use the input() function to capture the data from users.
We use the import() function to import external modules into our program.
SELF-LEARNING ASSESSMENT
Let us see how much you have learned from this lesson.
Answer the following questions.
TEST 1. Essay: Based on your understanding, discuss the following items using your own
words. Each item is 10 points.
ENRICHMENT ACTIVITY
Write a Python program that will convert any inputted values to integer.