Softenant
Technologies
Python Tuples MCQs (25) — Answers at the End

Python Tuples MCQs (25)

Python Training in Vizag (Softenant)

1) Tuple literal.

t = (1, 2, 3)
print(type(t).__name__, len(t))
A. tuple 3
B. list 3
C. tuple 2
D. list 2

2) Single-element tuple.

x = (5)
y = (5,)
print(type(x).__name__, type(y).__name__)
A. int int
B. tuple tuple
C. int tuple
D. tuple int

3) Immutability test.

t = (1, 2, 3)
try:
    t[0] = 9
except Exception as e:
    print(type(e).__name__)
A. TypeError
B. ValueError
C. IndexError
D. AttributeError

4) Tuple packing/unpacking.

a, b = 1, 2
t = a, b
x, y = t
print(x + y)
A. 1
B. 2
C. 3
D. (1, 2)

5) Swapping using tuples.

a, b = 3, 5
a, b = b, a
print(a, b)
A. 3 5
B. 5 3
C. (5,3)
D. Error

6) Indexing & slicing.

t = ('a','b','c','d')
print(t[1], t[1:3])
A. b (‘b’,’c’)
B. b [‘b’,’c’]
C. c (‘b’,’c’)
D. IndexError

7) Methods available?

print(hasattr(tuple, 'append'), hasattr(tuple, 'count'))
A. True True
B. False True
C. True False
D. False False

8) Concatenation.

t1 = (1,2); t2 = (3,)
print(t1 + t2)
A. (1, 2, 3)
B. (1, 2, (3,))
C. [1, 2, 3]
D. Error

9) Repetition.

print(('x',) * 3)
A. (‘x’,’x’,’x’)
B. [‘x’,’x’,’x’]
C. ‘xxx’
D. Error

10) Membership.

t = (1,2,3)
print(2 in t, 4 in t)
A. True True
B. True False
C. False True
D. False False

11) Tuple of lists mutability.

t = ([1], [2])
t[0].append(9)
print(t)
A. ([1,9], [2])
B. ([1], [2])
C. TypeError
D. AttributeError

12) Hashability requirement.

try:
    d = { (1,2): "ok", [1,2]: "nope" }
except Exception as e:
    print(type(e).__name__)
A. KeyError
B. TypeError
C. ValueError
D. None

13) Count & index.

t = (1,2,2,3)
print(t.count(2), t.index(2))
A. 2 1
B. 1 2
C. 2 2
D. 1 1

14) Converting to tuple.

print(tuple("py"))
A. (‘py’,)
B. (‘p’,’y’)
C. [‘p’,’y’]
D. ‘py’

15) Starred unpacking.

t = (1,2,3,4)
a, *mid, d = t
print(a, mid, d)
A. 1 [2,3] 4
B. 1 (2,3) 4
C. 1 [2] 4
D. ValueError

16) Tuple comprehension?

t = (x*x for x in range(3))
print(type(t).__name__)
tuple
B. list
C. generator
D. range

17) Create a tuple from generator.

g = (i for i in range(3))
t = tuple(g)
print(t)
A. (0, 1, 2)
B. generator object
C. [0,1,2]
D. (1, 2, 3)

18) Sorted tuple.

t = (3,1,2)
print(sorted(t), t)
A. [1,2,3] (3,1,2)
B. (1,2,3) (1,2,3)
C. [1,2,3] (1,2,3)
D. Error

19) Tuple as dict key works.

d = {}
d[(1,2)] = 9
print(d[(1,2)])
A. 9
B. KeyError
C. TypeError
None

20) Unpack error count.

t = (1,2,3)
a, b = t
A. ValueError
B. TypeError
C. Works: a=1, b=(2,3)
D. Works: a=(1,2), b=3

21) Nesting + indexing.

t = (1, (2, 3), 4)
print(t[1][0])
A. 1
B. 2
C. 3
D. TypeError

22) Min/Max mixed types (Py3)?

min((1, "2"))
A. 1
B. “2”
C. TypeError
D. None

23) Zip creates tuples.

print(list(zip([1,2], ['a','b'])))
A. [(1,’a’), (2,’b’)]
B. [[1,’a’], [2,’b’]]
C. ((1,’a’), (2,’b’))
D. dict

24) Enumerate returns…

print(list(enumerate(('x','y'))))
A. [(0,’x’), (1,’y’)]
B. ((0,’x’), (1,’y’))
C. [‘x’,’y’]
D. {‘x’:0,’y’:1}

25) Trailing comma creates tuple.

x = 1,
print(x, type(x).__name__)
A. (1,) tuple
B. 1 int
C. [1] list
D. Error

Answer Key

1) A

2) C

3) A

4) C

5) B

6) A

7) B

8) A

9) A

10) B

11) A

12) B

13) A

14) B

15) A

16) C

17) A

18) A

19) A

20) A

21) B

22) C

23) A

24) A

25) A