0% found this document useful (0 votes)
143 views16 pages

002 Python Variables and Python Data Types Updated

The document introduces Python variables and data types. It discusses that Python is a dynamically typed language so variable types are not declared. The main data types covered are numbers, strings, lists, and tuples. Numbers include integers, floats, longs, and complexes. Strings can be indexed, sliced, formatted, and concatenated. Lists are mutable sequences that can hold mixed types, while tuples are immutable sequences.

Uploaded by

Khan Bahi
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
Download as docx, pdf, or txt
0% found this document useful (0 votes)
143 views16 pages

002 Python Variables and Python Data Types Updated

The document introduces Python variables and data types. It discusses that Python is a dynamically typed language so variable types are not declared. The main data types covered are numbers, strings, lists, and tuples. Numbers include integers, floats, longs, and complexes. Strings can be indexed, sliced, formatted, and concatenated. Lists are mutable sequences that can hold mixed types, while tuples are immutable sequences.

Uploaded by

Khan Bahi
Copyright
© © All Rights Reserved
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1/ 16

1|Page Introduction to programming using Python

Python Variables and Python Data Types


1. Python Variables and Python Data Types

In this Python lesson on Python Variables and Python Data Types, we will learn about at Python
variables and data types being used in Python. Since we know that Python is a dynamically-typed
language, we don’t specify the type of a variable when declaring one. We will also learn about
converting one data type to another in Python and local and global variables in Python.

The Best Tutorial on Python Variables and Python Data Types

2. What is Python Variables?

A variable is a container for a value. It can be assigned a name; you can use it to refer to it later in the
program. Based on the value assigned, the interpreter decides its data type. You can always store a
different type in a variable.

For example, if you store 7 in a variable, later, you can store ‘Dinosaur’.

a. Python Variables Naming Rules

There are certain rules to what you can name a variable (called an identifier).

1. Python variables can only begin with a letter(A-Z/a-z) or an underscore ( _ ).

>>> 9lives=9

SyntaxError: invalid syntax

>>> flag=0
2|Page Introduction to programming using Python

>>> flag
>>> _9lives='cat'
>>> _9lives
‘cat’
2. The rest of the identifier may contain letters(A-Z/a-z), underscores (_), and numbers (0-9).

>>> year2='Sophomore'
>>> year2

‘Sophomore’

>>> _$$=7

SyntaxError: invalid syntax

3. Python is case-sensitive, and so are Python identifiers. Name and name are two different identifiers.

>>> name='A'
>>> name

‘Ayushi’

>>> Name

Traceback (most recent call last):


File “<pyshell#21>”, line 1, in <module>
Name
NameError: name ‘Name’ is not defined

4. Reserved words (keywords) cannot be used as identifier names.

and def False import not True


as del finally In or try
assert elif for Is pass while
break else from lambda print with
class except global None raise yield
continue exec if nonlocal return

b. Assigning and Reassigning Python Variables

To assign a value to Python variables, you don’t need to declare its type. You name it according to the
rules stated in section 2a, and type the value after the equal sign (=).

>>> age=7
>>> print(age)

7
3|Page Introduction to programming using Python

>>> age='Dinosaur'
>>> print(age)

Dinosaur

However, age=Dinosaur doesn’t make sense. Also, you cannot use python variables before assigning it a
value.

>>> name

Traceback (most recent call last):


File “<pyshell#8>”, line 1, in <module>
name
NameError: name ‘name’ is not defined

You can’t put the identifier on the right-hand side of the equal sign, though. The following code causes
an error.

>>> 7=age

SyntaxError: can’t assign to literal

Neither can you assign python variables to a keyword.

>>> False=choice

SyntaxError: can’t assign to keyword

c. Multiple Assignment

You can assign values to multiple python variables in one statement.

>>> age,city=21,'Indore'
>>> print(age,city)

21 Indore

Or you can assign the same value to multiple python variables.

>>> age=fav=7
>>> print(age,fav)

77

This is how you assign values to Python Variables

d. Swapping variables

Swapping means interchanging values. To swap Python variables, you don’t need to do much.
4|Page Introduction to programming using Python

>>> a,b='red','blue'
>>> a,b=b,a
>>> print(a,b)

blue red

e. Deleting variables

You can also delete python variables using the keyword ‘del’.

>>> a='red'
>>> del a
>>> a

Traceback (most recent call last):


File “<pyshell#39>”, line 1, in <module>
a
NameError: name ‘a’ is not defined

This is How you can delete Python Variables

Python Variables and Python Data Types

3. Python Data Types

Although we don’t have to declare type for python variables, a value does have a type. This information
is vital to the interpreter. Python supports the following Python data types.

a. Python Numbers

There are four numeric Python data types.


5|Page Introduction to programming using Python

1. int– int stands for integer. This Python Data Type holds signed
integers. We can use the type() function to find which class it
belongs to.

>>> a=-7
>>> type(a)

<class ‘int’>

An integer can be of any length, with the only limitation being the available memory.

>>> a=9999999999999999999999999999999
>>> type(a)

<class ‘int’>

2. float– This Python Data Type holds floating point real values. An
int can only store the number 3, but float can store 3.25 if you
want.

>>> a=3.0
>>> type(a)

<class ‘float’>

3. long – This Python Data Types holds a long integer of unlimited


length. But this construct does not exist in Python 3.x.

4. complex- This Python Data Types holds a complex number. A complex


number looks like this: a+bj Here, a and b are the real parts of the
number, and j is imaginary.

>>> a=2+3j
>>> type(a)

<class ‘complex’>

Use the isinstance() function to tell if python variables belong to a particular class. It takes two
parameters- the variable/value, and the class.

>>> print(isinstance(a,complex))

True

b. Strings

A string is a sequence of characters. Python does not have a char data type, unlike C++ or Java. You can
delimit a string using single quotes or double quotes.

>>> city='Ahmedabad'
6|Page Introduction to programming using Python

>>> city

‘Ahmedabad’

>>> city="Ahmedabad"
>>> city

‘Ahmedabad’

1. Spanning a string across lines – To span a string across multiple


lines, you can use triple quotes.

>>> var="""If
only"""
>>> var

‘If\n\tonly’

>>> print(var)

If
Only

>>> """If
only"""

‘If\n\tonly’

As you can see, the quotes preserved the formatting (\n is the escape sequence for newline, \t is for tab).

2. Displaying part of a string– You can display a character from a


string using its index in the string. Remember, indexing starts with
0.

>>> lesson='disappointment'
>>> lesson[0]

‘d’

You can also display a burst of characters in a string using the slicing operator [].

>>> lesson[5:10]

‘point’

This prints the characters from 5 to 9.

3. String Formatters– String formatters allow us to print characters


and values at once. You can use the % operator.
7|Page Introduction to programming using Python

>>> x=10;
>>> printer="Dell"
>>> print("I just printed %s pages to the printer %s" % (x, printer))

Or you can use the format method.


>>> print("I just printed {0} pages to the printer {1}".format(x, printer))
>>> print("I just printed {x} pages to the printer {printer}".format(x=7, printer="Dell"))

A third option is to use f-strings.

>>> print(f"I just printed {x} pages to the printer {printer}")

4. String Concatenation– You can concatenate(join) strings.

>>> a='10'
>>> print(a+a)

1010

However, you cannot concatenate values of different types.

>>> print('10'+10)

Traceback (most recent call last):


File “<pyshell#89>”, line 1, in <module>;
print(’10’+10)
TypeError: must be str, not int
c. Python Lists

A list is a collection of values. Remember, it may contain different types of values. To define a list, you
must put values separated with commas in square brackets. You don’t need to declare a type for a list
either.

>>> days=['Monday','Tuesday',3,4,5,6,7]
>>> days

[‘Monday’, ‘Tuesday’, 3, 4, 5, 6, 7]

1. Slicing a list – You can slice a list the way you’d slice a
string- with the slicing operator.

>>> days[1:3]

[‘Tuesday’, 3]

Indexing for a list begins with 0, like for a string. A Python doesn’t have arrays.

2. Length of a list– Python supports an inbuilt function to calculate


the length of a list.
8|Page Introduction to programming using Python

>>> len(days)

3. Reassigning elements of a list– A list is mutable. This means that


you can reassign elements later on.

>>> days[2]='Wednesday'
>>> days

[‘Monday’, ‘Tuesday’, ‘Wednesday’, 4, 5, 6, 7]

4. Multidimensional lists– A list may have more than one dimension.


We will look further into this in the tutorial on Python Lists.

>>> a=[[1,2,3],[4,5,6]]
>>> a

[[1, 2, 3], [4, 5, 6]]

d. Python Tuples

A tuple is like a list. You declare it using parentheses instead.

>>> subjects=('Physics','Chemistry','Maths')
>>> subjects

(‘Physics’, ‘Chemistry’, ‘Maths’)

1. Accessing and Slicing a Tuple– You access a tuple the same way as you’d access a list. The same
goes for slicing it.

>>> subjects[1]

‘Chemistry’

>>> subjects[0:2]

(‘Physics’, ‘Chemistry’)

2. A tuple is immutable– However, it is immutable. Once declared, you


can’t change its size or elements.

>>> subjects [2] ='Biology'

Traceback (most recent call last):


File “<pyshell#107>”, line 1, in <module>
subjects [2] =’Biology’
TypeError: ‘tuple’ object does not support item assignment
9|Page Introduction to programming using Python

>>> subjects [3] ='Computer Science'

Traceback (most recent call last):


File “<pyshell#108>”, line 1, in <module>
subjects [3] =’Computer Science’
TypeError: ‘tuple’ object does not support item assignment

e. Dictionaries

A dictionary holds key-value pairs. Declare it in curly braces, with pairs separated by commas. Separate
keys and values by a colon (:).

>>> person={'city':'Ahmedabad','age':7}
>>> person

{‘city’: ‘Ahmedabad’, ‘age’: 7}

The type () function works with dictionaries too.

>>> type(person)

<class ‘dict’>

1. Accessing a value– To access a value, you mention the key in


square brackets.

>>> person['city']

‘Ahmedabad’

2. Reassigning elements– You can reassign a value to a key.

>>> person['age’] =21


>>> person['age']

21

3. List of keys– Use the keys () function to get a list of keys in


the dictionary.

>>> person.keys()

dict_keys ([‘city’, ‘age’])

f. bool

A Boolean value can be True or False.

>>> a=2>1
>>> type(a)
10 | P a g e Introduction to programming using Python

<class ‘bool’>

g. Sets

A set can have a list of values. Define it using curly braces.

>>> a= {1,2,3}
>>> a

{1, 2, 3}

It returns only one instance of any value present more than once.

>>> a= {1,2,2,3}
>>> a

{1, 2, 3}

However, a set is unordered, so it doesn’t support indexing.

>>> a [2]

Traceback (most recent call last):


File “<pyshell#127>”, line 1, in <module>
a [2]
TypeError: ‘set’ object does not support indexing

Also, it is mutable. You can change its elements or add more. Use the add () and remove () methods to
do so.

>>> a= {1,2,3,4}
>>> a

{1, 2, 3, 4}

>>> a.remove(4)
>>> a

{1, 2, 3}

>>> a.add (4)


>>> a

{1, 2, 3, 4}

4. Type Conversion

Since Python is dynamically-typed, you may want to convert a value into another type. Python supports
a list of functions for the same.
11 | P a g e Introduction to programming using Python

a. int ()

It converts the value into an int.

>>> int (3.7)

3
Notice how it truncated 0.7 instead of rounding the number off to 4. You can also turn a Boolean into an
int.

>>> int (True)

>>> int (False)

However, you cannot turn a string into an int. It throws an error.

>>> int("a")

Traceback (most recent call last):


File “<pyshell#135>”, line 1, in <module>;
int(“a”)
ValueError: invalid literal for int () with base 10: ‘a’

However, if the string has only numbers, then you can.

>>> int ("77")

77

b. float ()

It converts the value into a float.

>>> float (7)

7.0

>>> float (7.7)

7.7

>>> float (True)

1.0

>>> float ("11")


12 | P a g e Introduction to programming using Python

You can also use ‘e’ to denote an exponential number.

11.0

>>> float("2.1e-2")

0.021

>>> float (2.1e-2)

0.021
However, this number works even without the float () function.

>>> 2.1e-2

0.021

c. str ()

It converts the value into a string.

>>> str (2.1)

‘2.1’

>>> str (7)

‘7’

>>> str (True)

‘True’

You can also convert a list, a tuple, a set, or a dictionary into a string.

>>> str ([1,2,3])

‘[1, 2, 3]’

d. bool ()

It converts the value into a Boolean.

>>> bool (3)

True

>>> bool (0)


13 | P a g e Introduction to programming using Python

False

>>> bool (True)

True

>>> bool (0.1)

True

You can convert a list into a Boolean.

>>> bool([1,2])

True

The function returns False for empty constructs.

>>> bool ()
False
>>> bool ([])
False
>>> bool ({})
False

None is a keyword in Python that represents an absence of value.

>>> bool (None)

False

e. set ()

It converts the value into a set.

>>> set ([1,2,2,3])

{1, 2, 3}

>>> set ({1,2,2,3})

{1, 2, 3}

f. list ()

It converts the value into a list.

>>> del list


>>> list ("123")
14 | P a g e Introduction to programming using Python

[‘1’, ‘2’, ‘3’]

>>> list ({1,2,2,3})

[1, 2, 3]

>>> list({"a":1,"b":2})

[‘a’, ‘b’]

However, the following raises an error.

>>> list ({a:1, b:2})

Traceback (most recent call last):


File “<pyshell#173>”, line 1, in <module>;
list ({a:1, b:2})
TypeError: unhashable type: ‘set’

g. tuple ()

It converts the value into a tuple.

>>> tuple ({1,2,2,3})

(1, 2, 3)

You can try your own combinations. Also try composite functions.

>>> tuple (list (set ([1,2])))

(1, 2)

5. Python Local and Python Global Variables

Another classification of python variable is based on scope.

a. Python Local Variables

When you declare a variable in a function, class, or so, it is only visible in that scope. If you call it
outside of that scope, you get an ‘undefined’ error.

>>> def func1():


uvw=2
print(uvw)
>>> func1()

2
15 | P a g e Introduction to programming using Python

>>> uvw

Traceback (most recent call last):


File “<pyshell#76>”, line 1, in <module>
uvw
NameError: name ‘uvw’ is not defined[/php]

Here, the variable uvw is local to function func1().

b. Global variables

When you declare a variable outside any context/scope, it is visible in the whole program.

>>> xyz=3
>>> def func2():
xyz=0
xyz+=1
print(xyz)
>>> func2()

>>> xyz

You can use the ‘global’ keyword when you want to treat a variable as global in a local scope.

>>> foo=1
>>> def func2():
global foo
foo=3
print(foo)
>>> func2()

>>> foo

You might also like