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

SIMPLE PYTHON HTTP SERVER

SIMPLE PYTHON HTTP SERVER In many use cases, we come across the situation where we need a simple server to test some command or test some applications. But creating a server programmatically is a time taking process. To solve the problem Python has created SimpleHTTPServer module. In this post, we will learn how to create a simple HTTP server in a single command on Ubuntu.  Create SimpleHTTPServe Using Commandline  python -m SimpleHTTPServer 8001 Above command will create a simple HTTP server for you at port 8001 Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.

Golang - Run & Compile

GOLANG RUN & COMPILE In the previous post, we have discussed how to install Go on Linux. In this post, We will discuss how to compile and run a Go program. Create folder HelloWorld mkdir HelloWorld cd HelloWorld Create file HelloWorld.go touch HelloWorld.go Copy below code into HelloWorld.go file package main import "fmt" func main() { fmt.Println("Hello, World") } Compile go build Run ./HelloWorld Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.

BSNL Recruitment

BSNL Recruitment      Bharat Sanchar Nigam Limited (BSNL)  has released a notification for the post of   Management Trainees . Company Name BSNL Post Name    Management Trainees State India Salary Rs.  24,900-50,500 Number of Vacancy 300 Eligibility B.Tech Last Date 26-01-2019 Application Details Job Notification Apply Online Job Application BSNL Recruitment       Government Jobs in India Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above. Rozgardesh ( रोजगार देश )

South East Central Railway: SECR

South East Central Railway: SECR Company Name         :  South East Central Railway: SECR Post Name                       :   Apprentice State                            :  Maharashtra Salary                           :  Number of Vacancy   :  313 Eligibility                     :  10th Pass  Last Date to Apply     :  15-09-2018 Application Details    :  Notification Apply Online              :  Apply Here Please write comments if you find anything incorrect, or you want to share more information about the topic discussed above.