How to work with Python tuples
Python tuple is an immutable, ordered sequence of elements.Python tuples are similar to Python list, except that we can't change the elements in a tuple. If you don't know how python list works, please go through this Python Lists
Python tuples are,
- Immutable (cannot change the items of a tuples)
- Ordered, follows insertion order. Can be accessed by index
How to create a Python tuple
# creates an empty tuple t = () t1 = tuple() # creating a tuple with some data t = (1, 2, 3) t1 = (1, 'hello', 4.5, [1, 2, 3]) # a tuple can have a tuple, list or dictionary as its item t = (1, 2, ['a', 'b'], (1.5, 2.5), {1: 'x', 2: 'y'})
t = ('one_element') print(type(t)) # output : class 'str' # even though the element is inside the `()` it will be treated as String. Please put a `,` after the element, then only Python will treat it as a Python tuple. t = ('one_element',) print(type(t)) # output : class 'tuple'
How to access elements in a Python tuple
Python tuples can be accessed using index.t = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) print(t[0]) # output : 1 print(t[-1]) # output : 10 print(t[100]) # output : IndexError: tuple index out of range **When you try to access an element with index out of range. Python will trow an error.
Slicing in Python tuples
t = (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) print(t[0:]) # output : (1, 2, 3, 4, 5, 6, 7, 8, 9, 10) print(t[-1::-1]) # output : (10, 9, 8, 7, 6, 5, 4, 3, 2, 1) print(t[2:5]) # output : (3, 4, 5)
Modifying the elements of a tuple
Ohh...! Python tuples are immutable. Can I change the elements of a tuple??Yes, elements inside a tuple can be mutable as long as the element is mutable. Confused?? Lets see an example.
t1 = ('first', 'x', 'y', [1, 2, 3]) t1[0] = 'modified' # output : TypeError: 'tuple' object does not support item assignment
t1 = ('first', 'x', 'y', [1, 2, 3]) t1[3][1] = 'modified' print(t1) # output : ('first', 'x', 'y', [1, 'modified', 3])
Deleting the items from a tuple
Items from a tuple cant be deleted because Python tuple is immutable. We can delete the entire tuple.t = (1, 2, 3) del t **If you try to access it after deletion, an error will be thrown.
Other useful functions of a Python tuple
t = (4, 2, 3, 4, 5, 6, 7, 4, 9, 10) print(t.count(4)) # output : 3 # prints the no of times the given element is found in the tuple print(t.index(5)) # output : 4 # prints the index of the first occurence of the given element print(5 in t) # output : True # Returns True if the element is present in the tuple print(5 not in t) # output : False print(len(t)) # output : 10 new_t = sorted(t) print(new_t) # output : [2, 3, 4, 4, 4, 5, 6, 7, 9, 10] # remember returns a sorted list not a tuple print(max(t)) # output : 10 print(min(t)) # output : 2 print(sum(t)) # output : 54 ** mathematical functions like min, max and sum can be applied on tuples with numbers only
will omit your great writing due to this problem.
ReplyDeletepython online training in hyderabad
python online training hyderabad