Skip to main content

Python Tutorial

PYTHON DATA STRUCTURE

Data Structure is a way to organizing and storing data in computer memory so that we can access and modify it efficiently. In this post, we will learn about some cool feature of python data structure.

Python Data Structure

Python has following commonly used data structure.
  • List
  • Tuple
  • Set
  • Dictionary

List

In Python, List is the most versatile data structure which can be written as a list of comma separated values between square brackets.

Create list

#Question: Create an empty list in python
#Answer: my_first_list = [] 
#Question: Create a list containg numbers 1, 2, 3, 4, 5
#Answer:my_second_list = [1, 2, 3, 4, 5]

Insert in list

#Question: Store 1, 2, 3, 4, 5 in a list say my_list
#Answer: my_list = [1, 2, 3, 4, 5]
#Question: Store dynamic value in list say my_list. like from 5 to 1000
#Answer: 
my_list = []
for i in xrange(5, 1001):
    my_list.append(i)
my_list.append(x) insert value x at the end of the list

Access/Read list 

#Question: Read/Access/Print ith element of a list say my_list 
#Answer: print (my_list[i-1])
Slicing on list return a new list containing the requested elements
#Question: Return last three element of a list say my_list
#Answer: my_list[-3:]
#Question: return element from ith index to jth including both
#Answer: my_list[i:j]
Assignments operation are also possible using slicing and that may change the list size.
We can also concatenate two or more list by placing + symbol between them.

Traverse list

#Question: Iterate on my_list = [1, 2, 3, 4, 5]
#Answer: 
my_list = [1, 2, 3, 4, 5]
for i in my_list:
    print(i)

Delete from list

#Question: Delete 3 from my_list = [1, 2, 3, 4, 5]
#Answer: 
del my_list[2]
del keyword used to delete an element from the list. We can also use slicing to delete one or more than one element from a list at a time.

List as Stack

We can use a list as a stack (first-in-last-out) where stack.append(k) will insert k on top of stack and stack.pop() will remove the top of a stack.
my_stack = [1, 2, 3, 4, 5]
my_stackappend(0) # my_stack = [1, 2, 3, 4, 5, 0]
my_stack.pop() # my_stack = [1, 2, 3, 4, 5]
my_stack.pop() #now my_stack will be [1, 2, 3, 4]

List as Queue

It is possible to use a list as a queue (first-in-first-out) however the list is not efficient for this purpose. So to implement queue use collections.deque which has fast append and pop operation from both ends.
from collections import deque
my_queue = deque([1, 2, 3])
my_queue.append(9) # my_queue = [1, 2, 3, 9]          
my_queue.append(6) # my_queue = [1, 2, 3, 9, 6]         
my_queue.popleft() # my_queue = [2, 3, 9, 6]              
my_queue.popleft() # my_queue = [3, 6, 9]

Nested List

We can appends lists in a list to create a nested list.
my_list = []
my_list1 = [1, 2, 3]
my_list2 = [1, 2, 3, 9]          
my_list.append(my_list1)        
my_list.append(my_list2)              
#my_list = [[1, 2, 3], [1, 2, 3, 9]]

Other Operations on List

  • my_list.clear(): Remove all elements from my_list
  • my_list.copy(): Return a copy of my_list
  • my_list.count(k): Return numbers of time k appears in my_list
  • my_list.insert(i, k): Insert k at ith index
  • my_list.pop([i]): Remove ith elements of my_list
  • my_list.remove(k): Remove the first element from my_list whose value is k
  • my_list.reverse(): Reverse my_list
  • my_list.sort(): Sort my_list
  • len(my_list): Return length of my_list
  • my_list.extend(k): append sequence k to the list  
In next post we will discuss other data structure [Tuple, Set, Dictionary].

Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.

Comments

Popular posts from this blog

Time, Speed and Distance

Time, Speed And Distance  In this post, We will learn about time, speed and distance. Important Formula Distance = Time x Speed Time = Distance/Speed Speed = Distance/time Important Units Distance: meter (m), kilometre (km) Time: Hour (h), second (s) speed: meter/second (m/s), kilometre/hour  (km/h) Important Conversion 1 km = 1000 meter 1 h = 3600 s 1 km/h = (5/18) m/s 1 m/s = (18/5) km/h Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above. 

Joint Entrance Exam (JEE): Probability Syllabus

JEE: Probability Syllabus Probability  is a very interesting and different topic of mathematics which doesn't require your previous knowledge of any other chapters other than permutation and combination.  Following topics are the part of Jee syllabus Addition and multiplication rules of probability Addition and multiplication rules of probability Conditional Probability Bayes Theorem Independence of events Computation of probability of events using permutations and combinations Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.

Haryana Public Service Commission: HPSC 2018

Haryana Public Service Commission: HPSC 2018 Company Name         :  Haryana Public Service Commission: HPSC 2018 Recruitment Post Name                       :   Civil Judge State                            :  Haryana Salary                           :  Rs   27,700-44,770 Number of Vacancy   :  107 Eligibility                     :  Bachelor's Degree in Law Last Date to Apply     :  30-09-2018 Application Details    :  Notification Apply Online              :  Apply Here Government Jobs In  Haryana Please write comments if you f...

Securities and Exchange Board of India Recruitment 2018

Securities and Exchange Board of India  Company Name SEBI Post Name Assistant Manager State India Salary RS 28150-55600 Number of Vacancy 120 Eligibility Graduation Last Date 07-10-2018 Application Details Job Notification Apply Online Job Application Securities and Exchange Board of India (SEBI) Recruitment 2018    Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.