Python Dictionary
Python Dictionary
Dictionaries are a useful data structure for storing data in Python because they are
capable of imitating real-world data arrangements where a certain value exists for a
given key.
A dictionary is, in other words, a group of key-value pairs, where the values can be any
Python object. The keys, in contrast, are immutable Python objects, such as strings,
tuples, or numbers. Dictionary entries are ordered as of Python version 3.7. In Python 3.6
and before, dictionaries are generally unordered.
Syntax:
In the above dictionary Dict, The keys Name and Age are the strings which comes
under the category of an immutable object.
Code
Output
<class 'dict'>
printing Employee data ....
{'Name': 'Johnny', 'Age': 32, 'salary': 26000, 'Company': TCS}
Python provides the built-in function dict() method which is also used to create the
dictionary.
Code
Output
Empty Dictionary:
{}
Code
Output
ee["Company"])
Output
<class 'dict'>
printing Employee data ....
Name : Dev
Age : 20
Salary : 45000
Company : WIPRO
Python provides us with an alternative to use the get() method to access the dictionary
values. It would give the same result as given by the indexing.
Note: The value is updated if the key-value pair is already present in the dictionary.
Otherwise, the dictionary's newly added keys.
Output
Empty Dictionary:
{}
Example - 2:
Code
Output
<class 'dict'>
printing Employee data ....
Employee = {"Name": "Dev", "Age": 20, "salary":45000,"Company":"WIPRO"} Enter
the details of the new employee....
Name: Sunny
Age: 38
Salary: 39000
Company:Hcl
printing the new data
{'Name': 'Sunny', 'Age': 38, 'salary': 39000, 'Company': 'Hcl'}
Code
Output
<class 'dict'>
printing Employee data ....
{'Name': 'David', 'Age': 30, 'salary': 55000, 'Company': 'WIPRO'}
Deleting some of the employee data
printing the modified information
{'Age': 30, 'salary': 55000}
Deleting the dictionary: Employee
Lets try to print it again
NameError: name 'Employee' is not defined.
The last print statement in the above code, it raised an error because we tried to print
the Employee dictionary that already deleted.
The value connected to a specific key in a dictionary is removed using the pop() method,
which then returns the value. The key of the element to be removed is the only
argument needed. The pop() method can be used in the following ways:
Code
1. # Creating a Dictionary
2. Dict1 = {1: 'JavaTpoint', 2: 'Educational', 3: 'Website'}
3. # Deleting a key
4. # using pop() method
5. pop_key = Dict1.pop(2)
6. print(Dict1)
Output
Additionally, Python offers built-in functions popitem() and clear() for removing
dictionary items. In contrast to the clear() method, which removes all of the elements
from the entire dictionary, popitem() removes any element from a dictionary.
Iterating Dictionary
A dictionary can be iterated using for loop as given below.
Example 1
Code
Output
Name
Age
salary
Company
Example 2
Code
John
29
25000
WIPRO
Example - 3
Code
1. #for loop to print the values of the dictionary by using values() method.
2. Employee = {"Name": "John", "Age": 29, "salary":25000,"Company":"WIPRO"}
3. for x in Employee.values():
4. print(x)
Output
John
29
25000
WIPRO
Example 4
Code
1. #for loop to print the items of the dictionary by using items() method
2. Employee = {"Name": "John", "Age": 29, "salary":25000,"Company":"WIPRO"}
3. for x in Employee.items():
4. print(x)
Output
('Name', 'John')
('Age', 29)
('salary', 25000)
('Company', 'WIPRO')
Code
1. Employee={"Name":"John","Age":29,"Salary":25000,"Company":"WIPRO","Name":
2. "John"}
3. for x,y in Employee.items():
4. print(x,y)
Output
Name John
Age 29
Salary 25000
Company WIPRO
2. The key cannot belong to any mutable object in Python. Numbers, strings, or tuples
can be used as the key, however mutable objects like lists cannot be used as the key in a
dictionary.
Code
Output
The built-in Python dictionary methods are listed below, along with a brief description.
o len()
The dictionary's length is returned via the len() function in Python. The string is
lengthened by one for each key-value pair.
Code
Output
o any()
Like how it does with lists and tuples, the any() method returns True indeed if one
dictionary key does have a Boolean expression that evaluates to True.
Code
Output
True
o all()
Unlike in any() method, all() only returns True if each of the dictionary's keys contain a
True Boolean value.
Code
False
o sorted()
Like it does with lists and tuples, the sorted() method returns an ordered series of the
dictionary's keys. The ascending sorting has no effect on the original Python dictionary.
Code
Output
[ 1, 5, 7, 8]
o clear()
Code
1. # dictionary methods
2. dict = {1: "Hcl", 2: "WIPRO", 3: "Facebook", 4: "Amazon", 5: "Flipkart"}
3. # clear() method
4. dict.clear()
5. print(dict)
Output
{ }
o copy()
1. # dictionary methods
2. dict = {1: "Hcl", 2: "WIPRO", 3: "Facebook", 4: "Amazon", 5: "Flipkart"}
3. # copy() method
4. dict_demo = dict.copy()
5. print(dict_demo)
Output
o pop()
Code
1. # dictionary methods
2. dict = {1: "Hcl", 2: "WIPRO", 3: "Facebook", 4: "Amazon", 5: "Flipkart"}
3. # pop() method
4. dict_demo = dict.copy()
5. x = dict_demo.pop(1)
6. print(x)
Output
popitem()
Code
1. # dictionary methods
2. dict = {1: "Hcl", 2: "WIPRO", 3: "Facebook", 4: "Amazon", 5: "Flipkart"}
3. # popitem() method
4. dict_demo.popitem()
5. print(dict_demo)
Output
o keys()
Code
1. # dictionary methods
2. dict = {1: "Hcl", 2: "WIPRO", 3: "Facebook", 4: "Amazon", 5: "Flipkart"}
3. # keys() method
4. print(dict_demo.keys())
Output
dict_keys([1, 2, 3, 4, 5])
o items()
Code
1. # dictionary methods
2. dict = {1: "Hcl", 2: "WIPRO", 3: "Facebook", 4: "Amazon", 5: "Flipkart"}
3. # items() method
4. print(dict_demo.items())
Output
o get()
Code
1. # dictionary methods
2. dict = {1: "Hcl", 2: "WIPRO", 3: "Facebook", 4: "Amazon", 5: "Flipkart"}
3. # get() method
4. print(dict_demo.get(3))
Output
o update()
It mainly updates all the dictionary by adding the key-value pair of dict2 to this
dictionary.
Code
1. # dictionary methods
2. dict = {1: "Hcl", 2: "WIPRO", 3: "Facebook", 4: "Amazon", 5: "Flipkart"}
3. # update() method
4. dict_demo.update({3: "TCS"})
5. print(dict_demo)
Output
o values()
It returns all the values of the dictionary with respect to given input.
Code
1. # dictionary methods
2. dict = {1: "Hcl", 2: "WIPRO", 3: "Facebook", 4: "Amazon", 5: "Flipkart"}
3. # values() method
4. print(dict_demo.values())
Output
Python Functions
This tutorial will go over the fundamentals of Python functions, including what they are,
their syntax, their primary parts, return keywords, and significant types. We'll also look at
some examples of Python function definitions.
o Once defined, Python functions can be called multiple times and from any
location in a program.
o Our Python program can be broken up into numerous, easy-to-follow functions if
it is significant.
o The ability to return as many outputs as we want using a variety of arguments is
one of Python's most significant achievements.
o However, Python programs have always incurred overhead when calling
functions.
Syntax
Output:
Calling a Function
Calling a Function To define a function, use the def keyword to give it a name, specify
the arguments it must receive, and organize the code block.
When the fundamental framework for a function is finished, we can call it from
anywhere in the program. An illustration of how to use the a_function function can be
found below.
Output:
Code
Output:
Function Arguments
The following are the types of arguments that we can use to call a function:
1. Default arguments
2. Keyword arguments
3. Required arguments
4. Variable-length arguments
1) Default Arguments
A default contention is a boundary that takes as information a default esteem, assuming
that no worth is provided for the contention when the capability is called. The following
example demonstrates default arguments.
Code
Output:
2) Keyword Arguments
Keyword arguments are linked to the arguments of a called function. While summoning
a capability with watchword contentions, the client might tell whose boundary esteem it
is by looking at the boundary name.
ADVERTISEMENT
Code
Output:
3) Required Arguments
Required arguments are those supplied to a function during its call in a predetermined
positional sequence. The number of arguments required in the method call must be the
same as those provided in the function's definition.
We should send two contentions to the capability() all put together; it will return a
language structure blunder, as seen beneath.
Code
Output:
4) Variable-Length Arguments
We can involve unique characters in Python capabilities to pass many contentions.
However, we need a capability. This can be accomplished with one of two types of
characters:
ADVERTISEMENT
Code
Output:
return Statement
When a defined function is called, a return statement is written to exit the function and
return the calculated value.
Syntax:
ADVERTISEMENT
Code
Output:
Lambda functions can only refer to variables in their argument list and the global
domain name because they contain their distinct local domain.
In contrast to inline expressions in C and C++, which pass function stack allocations at
execution for efficiency reasons, lambda expressions appear to be one-line
representations of functions.
Syntax
Code
Output:
The length of time a variable remains in RAM is its lifespan. The lifespan of a function is
the same as the lifespan of its internal variables. When we exit the function, they are
taken away from us. As a result, the value of a variable in a function does not persist
from previous executions.
Code
Output:
Here, we can see that the initial value of num is 10. Even though the function number()
changed the value of num to 50, the value of num outside of the function remained
unchanged.
This is because the capability's interior variable num is not quite the same as the outer
variable (nearby to the capability). Despite having a similar variable name, they are
separate factors with discrete extensions.
Factors past the capability are available inside the capability. The impact of these
variables is global. We can retrieve their values within the function, but we cannot alter
or change them. The value of a variable can be changed outside of the function if it is
declared global with the keyword global.
ADVERTISEMENT
Code
Output:
1. # integer number
2. integer = -20
3. print('Absolute value of -40 is:', abs(integer))
4.
5. # floating number
6. floating = -20.83
7. print('Absolute value of -40.83 is:', abs(floating))
Output:
ADVERTISEMENT
Output:
True
False
False
False
True
1. x = 10
2. y = bin(x)
3. print (y)
Output:
0b1010
Python bool()
The python bool() converts a value to boolean(True or False) using the standard truth
testing procedure.
1. test1 = []
2. print(test1,'is',bool(test1))
3. test1 = [0]
4. print(test1,'is',bool(test1))
5. test1 = 0.0
6. print(test1,'is',bool(test1))
7. test1 = None
8. print(test1,'is',bool(test1))
9. test1 = True
10. print(test1,'is',bool(test1))
11. test1 = 'Easy string'
12. print(test1,'is',bool(test1))
Output:
[] is False
[0] is True
0.0 is False
None is False
True is True
Easy string is True
ADVERTISEMENT
Python bytes()
The python bytes() in Python is used for returning a bytes object. It is an immutable
version of the bytearray() function.
Output:
1. x = 8
2. print(callable(x))
Output:
ADVERTISEMENT
ADVERTISEMENT
False
Output:
<class 'code'>
sum = 15
1. x = 8
2. exec('print(x==8)')
3. exec('print(x+4)')
Output:
True
12
1. s = sum([1, 2,4 ])
2. print(s)
3.
4. s = sum([1, 2, 4], 10)
5. print(s)
ADVERTISEMENT
Output:
7
17
1. l = [4, 3, 2, 0]
2. print(any(l))
3.
4. l = [0, False]
5. print(any(l))
6.
7. l = [0, False, 5]
8. print(any(l))
9.
10. l = []
11. print(any(l))
Output:
True
False
True
False
Output:
ADVERTISEMENT
'Python is interesting'
'Pyth\xf6n is interesting'
Pythön is interesting
Python bytearray()
The python bytearray() returns a bytearray object and can convert objects into
bytearray objects, or create an empty bytearray object of the specified size.
Output:
1. x = 8
2. print(eval('x + 1'))
Output:
Python float()
The python float() function returns a floating-point number from a number or string.
1. # for integers
2. print(float(9))
3.
4. # for floats
5. print(float(8.19))
6.
7. # for string floats
8. print(float("-24.27"))
9.
10. # for string floats with whitespaces
11. print(float(" -17.19\n"))
12.
13. # string float error
14. print(float("xyz"))
Output:
9.0
8.19
-24.27
-17.19
ValueError: could not convert string to float: 'xyz'
Output:
123
123.456790
1100
Python frozenset()
The python frozenset() function returns an immutable frozenset object initialized with
elements from the given iterable.
1. # tuple of letters
2. letters = ('m', 'r', 'o', 't', 's')
3.
4. fSet = frozenset(letters)
5. print('Frozen set is:', fSet)
6. print('Empty frozen set is:', frozenset())
Output:
1. class Details:
2. age = 22
3. name = "Phill"
4.
5. details = Details()
6. print('The age is:', getattr(details, "age"))
7. print('The age is:', details.age)
Output:
A Symbol table is defined as a data structure which contains all the necessary
information about the program. It includes variable names, methods, classes, etc.
ADVERTISEMENT
1. age = 22
2.
3. globals()['age'] = 22
4. print('The age is:', age)
Output:
1. l = [4, 3, 2, 0]
2. print(any(l))
3.
4. l = [0, False]
5. print(any(l))
6.
7. l = [0, False, 5]
8. print(any(l))
9.
10. l = []
11. print(any(l))
Output:
True
False
True
False
1. # list of numbers
2. list = [1,2,3,4,5]
3.
4. listIter = iter(list)
5.
6. # prints '1'
7. print(next(listIter))
8.
9. # prints '2'
10. print(next(listIter))
11.
12. # prints '3'
13. print(next(listIter))
14.
15. # prints '4'
16. print(next(listIter))
17.
18. # prints '5'
19. print(next(listIter))
Output:
1
2
3
4
5
1. strA = 'Python'
2. print(len(strA))
Output:
Python list()
The python list() creates a list in python.
1. # empty list
2. print(list())
3.
4. # string
5. String = 'abcde'
6. print(list(String))
7.
8. # tuple
9. Tuple = (1,2,3,4,5)
10. print(list(Tuple))
11. # list
12. List = [1,2,3,4,5]
13. print(list(List))
Output:
[]
['a', 'b', 'c', 'd', 'e']
[1,2,3,4,5]
[1,2,3,4,5]
A Symbol table is defined as a data structure which contains all the necessary
information about the program. It includes variable names, methods, classes, etc.
1. def localsAbsent():
2. return locals()
3.
4. def localsPresent():
5. present = True
6. return locals()
7.
8. print('localsNotPresent:', localsAbsent())
9. print('localsPresent:', localsPresent())
Output:
localsAbsent: {}
localsPresent: {'present': True}
Output:
1. #A random bytearray
2. randomByteArray = bytearray('ABC', 'utf-8')
3.
4. mv = memoryview(randomByteArray)
5.
6. # access the memory view's zeroth index
7. print(mv[0])
8.
9. # It create byte from memory view
10. print(bytes(mv[0:2]))
11.
12. # It create list from memory view
13. print(list(mv[0:3]))
Output:
65
b'AB'
[65, 66, 67]
Python object()
The python object() returns an empty object. It is a base for all the classes and holds
the built-in properties and methods which are default for all the classes.
1. python = object()
2.
3. print(type(python))
4. print(dir(python))
Output:
<class 'object'>
['__class__', '__delattr__', '__dir__', '__doc__', '__eq__', '__format__',
'__ge__',
'__getattribute__', '__gt__', '__hash__', '__init__', '__le__', '__lt__',
'__ne__',
'__new__', '__reduce__', '__reduce_ex__', '__repr__', '__setattr__',
'__sizeof__',
'__str__', '__subclasshook__']
Output:
Since the mode is omitted, the file is opened in 'r' mode; opens for reading.
1. # Calling function
2. result = chr(102) # It returns string representation of a char
3. result2 = chr(112)
4. # Displaying result
5. print(result)
6. print(result2)
7. # Verify, is it string type?
8. print("is it string type:", type(result) is str)
Output:
Python complex()
Python complex() function is used to convert numbers or string into a complex number.
This method takes two optional parameters and returns a complex number. The first
parameter is called a real and second as imaginary parts.
Output:
(1.5+0j)
(1.5+2.2j)
1. class Student:
2. id = 101
3. name = "Pranshu"
4. email = "pranshu@abc.com"
5. # Declaring function
6. def getinfo(self):
7. print(self.id, self.name, self.email)
8. s = Student()
9. s.getinfo()
10. delattr(Student,'course') # Removing attribute which is not available
11. s.getinfo() # error: throws an error
Output:
1. # Calling function
2. att = dir()
3. # Displaying result
4. print(att)
Output:
Output:
(5, 0)
1. # Calling function
2. result = enumerate([1,2,3])
3. # Displaying result
4. print(result)
5. print(list(result))
Output:
Python dict()
Python dict() function is a constructor which creates a dictionary. Python dictionary
provides three different constructors to create a dictionary:
1. # Calling function
2. result = dict() # returns an empty dictionary
3. result2 = dict(a=1,b=2)
4. # Displaying result
5. print(result)
6. print(result2)
Output:
{}
{'a': 1, 'b': 2}
The first argument can be none, if the function is not available and returns only
elements that are true.
Output:
[6]
Hashable types: * bool * int * long * float * string * Unicode * tuple * code object.
Output:
21
461168601842737174
1. # Calling function
2. info = help() # No argument
3. # Displaying result
4. print(info)
Output:
1. # Calling function
2. small = min(2225,325,2025) # returns smallest element
3. small2 = min(1000.25,2025.35,5625.36,10052.50)
4. # Displaying result
5. print(small)
6. print(small2)
Output:
325
1000.25
1. # Calling function
2. result = set() # empty set
3. result2 = set('12')
4. result3 = set('javatpoint')
5. # Displaying result
6. print(result)
7. print(result2)
8. print(result3)
Output:
set()
{'1', '2'}
{'a', 'n', 'v', 't', 'j', 'p', 'i', 'o'}
1. # Calling function
2. result = hex(1)
3. # integer value
4. result2 = hex(342)
5. # Displaying result
6. print(result)
7. print(result2)
Output:
0x1
0x156
1. # Calling function
2. val = id("Javatpoint") # string object
3. val2 = id(1200) # integer object
4. val3 = id([25,336,95,236,92,3225]) # List object
5. # Displaying result
6. print(val)
7. print(val2)
8. print(val3)
Output:
139963782059696
139963805666864
139963781994504
1. class Student:
2. id = 0
3. name = ""
4.
5. def __init__(self, id, name):
6. self.id = id
7. self.name = name
8.
9. student = Student(102,"Sohan")
10. print(student.id)
11. print(student.name)
12. #print(student.email) product error
13. setattr(student, 'email','sohan@abc.com') # adding new attribute
14. print(student.email)
Output:
102
Sohan
sohan@abc.com
1. # Calling function
2. result = slice(5) # returns slice object
3. result2 = slice(0,5,3) # returns slice object
4. # Displaying result
5. print(result)
6. print(result2)
Output:
slice(None, 5, None)
slice(0, 5, 3)
Output:
['a', 'a', 'i', 'j', 'n', 'o', 'p', 't', 't', 'v']
This method calls on iterator and throws an error if no item is present. To avoid the
error, we can set a default value.
Output:
256
32
82
1. # Calling function
2. val = input("Enter a value: ")
3. # Displaying result
4. print("You entered:",val)
Output:
Enter a value: 45
You entered: 45
If the number is not a number or if a base is given, the number must be a string.
1. # Calling function
2. val = int(10) # integer value
3. val2 = int(10.52) # float value
4. val3 = int('10') # string value
5. # Displaying result
6. print("integer values :",val, val2, val3)
Output:
integer values : 10 10 10
The isinstance() function takes two arguments, i.e., object and classinfo, and then it
returns either True or False.
1. class Student:
2. id = 101
3. name = "John"
4. def __init__(self, id, name):
5. self.id=id
6. self.name=name
7.
8. student = Student(1010,"John")
9. lst = [12,34,5,6,767]
10. # Calling function
11. print(isinstance(student, Student)) # isinstance of Student class
12. print(isinstance(lst, Student))
Output:
True
False
1. # Calling function
2. val = oct(10)
3. # Displaying result
4. print("Octal value of 10:",val)
Output:
Output:
56
82
38
Output:
16
16
0.0625
0.0625
Output:
Output:
[]
[0, 1, 2, 3]
[1, 2, 3, 4, 5, 6]
1. # for string
2. String = 'Java'
3. print(list(reversed(String)))
4.
5. # for tuple
6. Tuple = ('J', 'a', 'v', 'a')
7. print(list(reversed(Tuple)))
8.
9. # for range
10. Range = range(8, 12)
11. print(list(reversed(Range)))
12.
13. # for list
14. List = [1, 2, 7, 5]
15. print(list(reversed(List)))
Output:
1. # for integers
2. print(round(10))
3.
4. # for floating point
5. print(round(10.8))
6.
7. # even choice
8. print(round(6.6))
Output:
10
11
7
1. class Rectangle:
2. def __init__(rectangleType):
3. print('Rectangle is a ', rectangleType)
4.
5. class Square(Rectangle):
6. def __init__(self):
7. Rectangle.__init__('square')
8.
9. print(issubclass(Square, Rectangle))
10. print(issubclass(Square, list))
11. print(issubclass(Square, (list, Rectangle)))
12. print(issubclass(Rectangle, (list, Rectangle)))
Output:
True
False
True
True
Python str
The python str() converts a specified value into a string.
1. str('4')
Output:
'4'
1. t1 = tuple()
2. print('t1=', t1)
3.
4. # creating a tuple from a list
5. t2 = tuple([1, 6, 9])
6. print('t2=', t2)
7.
8. # creating a tuple from a string
9. t1 = tuple('Java')
10. print('t1=',t1)
11.
12. # creating a tuple from a dictionary
13. t1 = tuple({4: 'four', 5: 'five'})
14. print('t1=',t1)
Output:
t1= ()
t2= (1, 6, 9)
t1= ('J', 'a', 'v', 'a')
t1= (4, 5)
Python type()
The python type() returns the type of the specified object if a single argument is passed
to the type() built in function. If three arguments are passed, then it returns a new type
object.
1. List = [4, 5]
2. print(type(List))
3.
4. Dict = {4: 'four', 5: 'five'}
5. print(type(Dict))
6.
7. class Python:
8. a=0
9.
10. InstanceOfPython = Python()
11. print(type(InstanceOfPython))
Output:
<class 'list'>
<class 'dict'>
<class '__main__.Python'>
1. class Python:
2. def __init__(self, x = 7, y = 9):
3. self.x = x
4. self.y = y
5.
6. InstanceOfPython = Python()
7. print(vars(InstanceOfPython))
Output:
{'y': 9, 'x': 7}
1. numList = [4,5, 6]
2. strList = ['four', 'five', 'six']
3.
4. # No iterables are passed
5. result = zip()
6.
7. # Converting itertor to list
8. resultList = list(result)
9. print(resultList)
10.
11. # Two iterables are passed
12. result = zip(numList, strList)
13.
14. # Converting itertor to set
15. resultSet = set(result)
16. print(resultSet)
Output:
[]
{(5, 'five'), (4, 'four'), (6, 'six')}