Day-27 Tuples, Set

Tuples:
Tuples maintain the order of elements as they are defined.
Once a tuple is created, its contents cannot be changed.
Like lists, tuples can contain duplicate values.
Tuples can store mixed types of data, including other tuples, lists, integers, strings, etc.
You can access tuple elements by their index, starting from 0.
Tuple represented by ().

t = (10,20,30)
print(t)
print(type(t))
for num in t:
print(num)
total = 0
for num in t:
total+=num
print(total)
t[0] = 100
t = (10,20,30)
print(t)
print(type(t))

for num in t:
    print(num)

total = 0
for num in t:
    total+=num
print(total)

t[0] = 100
t = (10,20,30) print(t) print(type(t)) for num in t: print(num) total = 0 for num in t: total+=num print(total) t[0] = 100

Enter fullscreen mode Exit fullscreen mode

(10, 20, 30)
<class 'tuple'>
10
20
30
60
TypeError: 'tuple' object does not support item assignment
(10, 20, 30)
<class 'tuple'>
10
20
30
60
TypeError: 'tuple' object does not support item assignment
(10, 20, 30) <class 'tuple'> 10 20 30 60 TypeError: 'tuple' object does not support item assignment

Enter fullscreen mode Exit fullscreen mode

Tuple packing:
Creating a tuple by grouping multiple elements together, e.g., my_tuple = (1, 2, 3).
Tuple unpacking:
Extracting the elements of a tuple into individual variables, e.g., a, b, c = my_tuple.

#Tuple Packing
t = 10,20,30
print(t)
#Tuple Unpacking
no1, no2, no3 = t
print(no1)
print(no2)
print(no3)
#Tuple Packing
t = 10,20,30
print(t)

#Tuple Unpacking
no1, no2, no3 = t
print(no1)
print(no2)
print(no3)
#Tuple Packing t = 10,20,30 print(t) #Tuple Unpacking no1, no2, no3 = t print(no1) print(no2) print(no3)

Enter fullscreen mode Exit fullscreen mode

(10, 20, 30)
10
20
30
(10, 20, 30)
10
20
30
(10, 20, 30) 10 20 30

Enter fullscreen mode Exit fullscreen mode

t = 10,20,30,40,50,60
print(t[:2])
t = 10,20,30,40,50,60
print(t[:2])
t = 10,20,30,40,50,60 print(t[:2])

Enter fullscreen mode Exit fullscreen mode

(10, 20)
(10, 20)
(10, 20)

Enter fullscreen mode Exit fullscreen mode

t1 = 10,20,30
t2 = 40,50,60
print(t1+t2)
print(t1*3)
print(10 in t1)
print(10 not in t1)
t1 = 10,20,30
t2 = 40,50,60
print(t1+t2)

print(t1*3)

print(10 in t1)
print(10 not in t1)
t1 = 10,20,30 t2 = 40,50,60 print(t1+t2) print(t1*3) print(10 in t1) print(10 not in t1)

Enter fullscreen mode Exit fullscreen mode

(10, 20, 30, 40, 50, 60)
(10, 20, 30, 10, 20, 30, 10, 20, 30)
True
False
(10, 20, 30, 40, 50, 60)
(10, 20, 30, 10, 20, 30, 10, 20, 30)
True
False
(10, 20, 30, 40, 50, 60) (10, 20, 30, 10, 20, 30, 10, 20, 30) True False

Enter fullscreen mode Exit fullscreen mode

t1 = 10,20,30,40,50,60,10
print(t1.count(10))
print(t1.index(20))
print(sorted(t1))
print(sorted(t1,reverse=True))
t1 = 10,20,30,40,50,60,10

print(t1.count(10))
print(t1.index(20))
print(sorted(t1))
print(sorted(t1,reverse=True))
t1 = 10,20,30,40,50,60,10 print(t1.count(10)) print(t1.index(20)) print(sorted(t1)) print(sorted(t1,reverse=True))

Enter fullscreen mode Exit fullscreen mode

2
1
[10, 10, 20, 30, 40, 50, 60]
[60, 50, 40, 30, 20, 10, 10]
2
1
[10, 10, 20, 30, 40, 50, 60]
[60, 50, 40, 30, 20, 10, 10]
2 1 [10, 10, 20, 30, 40, 50, 60] [60, 50, 40, 30, 20, 10, 10]

Enter fullscreen mode Exit fullscreen mode

t = ((10,20,30), (40,50,60))
print(t)
print(t[0])
print(t[1])
print(t[0][0])
print(t[1][2])
t = ([10,20,30],[40,50,60])
print(t[0])
print(t[0][2])
t = ((10,20,30), (40,50,60))
print(t)
print(t[0])
print(t[1])

print(t[0][0])
print(t[1][2])

t = ([10,20,30],[40,50,60])

print(t[0])
print(t[0][2])
t = ((10,20,30), (40,50,60)) print(t) print(t[0]) print(t[1]) print(t[0][0]) print(t[1][2]) t = ([10,20,30],[40,50,60]) print(t[0]) print(t[0][2])

Enter fullscreen mode Exit fullscreen mode

((10, 20, 30), (40, 50, 60))
(10, 20, 30)
(40, 50, 60)
10
60
[10, 20, 30]
30
((10, 20, 30), (40, 50, 60))
(10, 20, 30)
(40, 50, 60)
10
60
[10, 20, 30]
30
((10, 20, 30), (40, 50, 60)) (10, 20, 30) (40, 50, 60) 10 60 [10, 20, 30] 30

Enter fullscreen mode Exit fullscreen mode

Write a program to find
a)Second List
b)List wise total
c)Print Only second element from each list.
data = ([10,20,30],[40,50,60],[70,80,90])

data = ([10,20,30],[40,50,60],[70,80,90])
#Second List
print(data[1])
#List wise total
for inner in data:
total = 0
for num,index in enumerate(inner):
total+=index
print(total,end=' ')
#Print Only second element from each list.
print()
i=0
while i<len(data):
print(data[i][1],end=' ')
i+=1
data = ([10,20,30],[40,50,60],[70,80,90])

#Second List
print(data[1])
#List wise total
for inner in data:
    total = 0
    for num,index in enumerate(inner):
        total+=index
    print(total,end=' ')
#Print Only second element from each list.
print()
i=0
while i<len(data):
    print(data[i][1],end=' ')
    i+=1
data = ([10,20,30],[40,50,60],[70,80,90]) #Second List print(data[1]) #List wise total for inner in data: total = 0 for num,index in enumerate(inner): total+=index print(total,end=' ') #Print Only second element from each list. print() i=0 while i<len(data): print(data[i][1],end=' ') i+=1

Enter fullscreen mode Exit fullscreen mode

[40, 50, 60]
60,150,240,
20 50 80
[40, 50, 60]
60,150,240,
20 50 80
[40, 50, 60] 60,150,240, 20 50 80

Enter fullscreen mode Exit fullscreen mode

eval():
eval() is a built-in Python function used to evaluate a string as a Python expression and return the result.

No tuple comprehension.

t = eval(input("Enter tuple Elements: "))
print(type(t))
print(t)
t = eval(input("Enter tuple Elements: "))
print(type(t))
print(t)
t = eval(input("Enter tuple Elements: ")) print(type(t)) print(t)

Enter fullscreen mode Exit fullscreen mode

Enter tuple Elements: 10,20,30
<class 'tuple'>
(10, 20, 30)
Enter tuple Elements: 10,20,30
<class 'tuple'>
(10, 20, 30)
Enter tuple Elements: 10,20,30 <class 'tuple'> (10, 20, 30)

Enter fullscreen mode Exit fullscreen mode

next() Function:
The next() function returns the next item in an iterator.

t = (no for no in range(1,11))
print(next(t))
print(next(t))
print(next(t))
print(next(t))
t = (no for no in range(1,11))
print(next(t))
print(next(t))
print(next(t))
print(next(t))
t = (no for no in range(1,11)) print(next(t)) print(next(t)) print(next(t)) print(next(t))

Enter fullscreen mode Exit fullscreen mode

1
2
3
4
1
2
3
4
1 2 3 4

Enter fullscreen mode Exit fullscreen mode

*Difference between ‘is’ and ‘==’: *
The ‘==’ is known as the equality operator.
The ‘is’ is known as the identity operator.
== checks value.
is checks memory.
== operator helps us compare the equality of objects.
is operator helps us check whether different variables point towards a similar object in the memory.

Example:
For list:

l1 = [10,20,30]
l2 = l1
print(id(l1))
print(id(l2))
print(l1 == l2)
print(l1 is l2)
l2 = list(l1)
print(id(l2))
print(l1 == l2)
print(l1 is l2)
l1 = [10,20,30]
l2 = l1
print(id(l1))
print(id(l2))
print(l1 == l2)
print(l1 is l2)

l2 = list(l1)
print(id(l2))
print(l1 == l2)
print(l1 is l2)
l1 = [10,20,30] l2 = l1 print(id(l1)) print(id(l2)) print(l1 == l2) print(l1 is l2) l2 = list(l1) print(id(l2)) print(l1 == l2) print(l1 is l2)

Enter fullscreen mode Exit fullscreen mode

124653538036544
124653538036544
True
True
124653536481408
True
False
124653538036544
124653538036544
True
True
124653536481408
True
False
124653538036544 124653538036544 True True 124653536481408 True False

Enter fullscreen mode Exit fullscreen mode

For Tuple:

l1 = (10,20,30)
l2 = l1
print(id(l1))
print(id(l2))
print(l1 == l2)
print(l1 is l2)
l2 = tuple(l1)
print(id(l2))
print(l1 == l2)
print(l1 is l2)
l1 = (10,20,30)
l2 = l1
print(id(l1))
print(id(l2))
print(l1 == l2)
print(l1 is l2)

l2 = tuple(l1)
print(id(l2))
print(l1 == l2)
print(l1 is l2)
l1 = (10,20,30) l2 = l1 print(id(l1)) print(id(l2)) print(l1 == l2) print(l1 is l2) l2 = tuple(l1) print(id(l2)) print(l1 == l2) print(l1 is l2)

Enter fullscreen mode Exit fullscreen mode

130906053714624
130906053714624
True
True
130906053714624
True
True
130906053714624
130906053714624
True
True
130906053714624
True
True
130906053714624 130906053714624 True True 130906053714624 True True

Enter fullscreen mode Exit fullscreen mode

Tuple vs List:
Tuples are immutable objects and lists are mutable objects.
Tuples use less memory and are faster to access than to lists.
As tuples are immutable, size will be lesser than list.

Example:

import sys
l = [10,20,30,40]
t = (10,20,30,40)
print(sys.getsizeof(l))
print(sys.getsizeof(t))
import sys
l = [10,20,30,40]
t = (10,20,30,40)
print(sys.getsizeof(l))
print(sys.getsizeof(t))
import sys l = [10,20,30,40] t = (10,20,30,40) print(sys.getsizeof(l)) print(sys.getsizeof(t))

Enter fullscreen mode Exit fullscreen mode

88
72
88
72
88 72

Enter fullscreen mode Exit fullscreen mode

Set:
Sets are used to store multiple items in a single variable.
A set is a collection which is unordered, immutable(unchangeable), and unindexed.
It ignore duplicates.

Set Methods:
1)union():
(|)Return a set containing the union of sets.

2)intersection():(&)Returns a set, that is the intersection of two other sets.

3)difference():(-)Returns a set containing the difference between two or more sets.

4)symmetric_difference():(^)Returns a set with the symmetric differences of two sets.

Example:1

s1 = {10,20,30,40}
s2 = {30,40,50,60}
print(s1.union(s2))
print(s1 | s2)
print(s1.intersection(s2))
print(s1 & s2)
print(s1.difference(s2))
print(s1 - s2)
print(s1.symmetric_difference(s2))
print(s1 ^ s2)
s1 = {10,20,30,40}
s2 = {30,40,50,60}
print(s1.union(s2))
print(s1 | s2)

print(s1.intersection(s2))
print(s1 & s2)

print(s1.difference(s2))
print(s1 - s2)

print(s1.symmetric_difference(s2))
print(s1 ^ s2)
s1 = {10,20,30,40} s2 = {30,40,50,60} print(s1.union(s2)) print(s1 | s2) print(s1.intersection(s2)) print(s1 & s2) print(s1.difference(s2)) print(s1 - s2) print(s1.symmetric_difference(s2)) print(s1 ^ s2)

Enter fullscreen mode Exit fullscreen mode

{40, 10, 50, 20, 60, 30}
{40, 10, 50, 20, 60, 30}
{40, 30}
{40, 30}
{10, 20}
{10, 20}
{10, 50, 20, 60}
{10, 50, 20, 60}
{40, 10, 50, 20, 60, 30}
{40, 10, 50, 20, 60, 30}
{40, 30}
{40, 30}
{10, 20}
{10, 20}
{10, 50, 20, 60}
{10, 50, 20, 60}
{40, 10, 50, 20, 60, 30} {40, 10, 50, 20, 60, 30} {40, 30} {40, 30} {10, 20} {10, 20} {10, 50, 20, 60} {10, 50, 20, 60}

Enter fullscreen mode Exit fullscreen mode

Example:2

s1 = {10,20}
s2 = {20,30}
s3 = {30,40}
print(s1.union(s2,s3))
result = s1 | s2 | s3
print(result)
s1 = {10,20}
s2 = {20,30}
s3 = {30,40}

print(s1.union(s2,s3))

result = s1 | s2 | s3
print(result)
s1 = {10,20} s2 = {20,30} s3 = {30,40} print(s1.union(s2,s3)) result = s1 | s2 | s3 print(result)

Enter fullscreen mode Exit fullscreen mode

{20, 40, 10, 30}
{20, 40, 10, 30}
{20, 40, 10, 30}
{20, 40, 10, 30}
{20, 40, 10, 30} {20, 40, 10, 30}

Enter fullscreen mode Exit fullscreen mode

discard():
The discard() method removes an element from the set if it exists. If the element is not present, it does nothing (no error is raised).
remove():
The remove() method removes an element from the set if it exists. If the element is not present, it raises a KeyError.

s = {"abcd", 1.2, True, 500,500}
s.remove(10)
print(s)
s.discard(10)
print(s)
s = {"abcd", 1.2, True, 500,500}
s.remove(10)
print(s)

s.discard(10)
print(s)
s = {"abcd", 1.2, True, 500,500} s.remove(10) print(s) s.discard(10) print(s)

Enter fullscreen mode Exit fullscreen mode

KeyError: 10
{'abcd', 1.2, 500, True}
KeyError: 10
{'abcd', 1.2, 500, True}
KeyError: 10 {'abcd', 1.2, 500, True}

Enter fullscreen mode Exit fullscreen mode

Tasks:
match1 = {“sanju”, “virat”, “ashwin”, “rohit”}
match2 = {“dhoni”, “virat”, “bumrah”, “siraj”}

Find the following:
a)Both match1, match2
b)Played in Match1 but not in match2
c)Played in Match2 but not in match 1
d)Played in Only one match

match1 = {"sanju", "virat", "ashwin", "rohit"}
match2 = {"dhoni", "virat", "bumrah", "siraj"}
print(match1 & match2)
print(match1 - match2)
print(match2 - match1)
print(match1 ^ match2)
match1 = {"sanju", "virat", "ashwin", "rohit"}
match2 = {"dhoni", "virat", "bumrah", "siraj"}
print(match1 & match2)
print(match1 - match2)
print(match2 - match1)
print(match1 ^ match2)
match1 = {"sanju", "virat", "ashwin", "rohit"} match2 = {"dhoni", "virat", "bumrah", "siraj"} print(match1 & match2) print(match1 - match2) print(match2 - match1) print(match1 ^ match2)

Enter fullscreen mode Exit fullscreen mode

{'virat'}
{'sanju', 'rohit', 'ashwin'}
{'dhoni', 'siraj', 'bumrah'}
{'sanju', 'bumrah', 'rohit', 'siraj', 'ashwin', 'dhoni'}
{'virat'}
{'sanju', 'rohit', 'ashwin'}
{'dhoni', 'siraj', 'bumrah'}
{'sanju', 'bumrah', 'rohit', 'siraj', 'ashwin', 'dhoni'}
{'virat'} {'sanju', 'rohit', 'ashwin'} {'dhoni', 'siraj', 'bumrah'} {'sanju', 'bumrah', 'rohit', 'siraj', 'ashwin', 'dhoni'}

Enter fullscreen mode Exit fullscreen mode

原文链接:Day-27 Tuples, Set

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享
pride relates more to our opinion of ourselves, vanity to what we would have others think of us.
骄傲多半涉及我们自己怎样看待自己,而虚荣则涉及我们想别人怎样看我们
评论 抢沙发

请登录后发表评论

    暂无评论内容