Open In App

Output of python program | Set 12(Lists and Tuples)

Improve
Improve
Like Article
Like
Save
Share
Report

Prerequisite: List and Tuples 
Note: Output of all these programs is tested on Python3

1) What is the output of the following program? 

PYTHON




L1 = []
L1.append([1, [2, 3], 4])
L1.extend([7, 8, 9])
print(L1[0][1][1] + L1[2])


a) Type Error: can only concatenate list (not “int”) to list 
b) 12 
c) 11 
d) 38 

Ans: (c) 
Explanation: In the print(), indexing is used. L1[0] denotes [1, [2, 3], 4], L1[0][1] denotes [2, 3], 
L1[0][1][1] = 3 and L1[2] = 8. Thus, the two integers are added, 3 + 8 = 11 and output comes as 11.

2) What is the output of the following program? 

PYTHON




L1 = [1, 1.33, 'GFG', 0, 'NO', None, 'G', True]
val1, val2 = 0, ''
for x in L1:
    if(type(x) == int or type(x) == float):
        val1 += x
    else if(type(x) == str):
        val2 += x
    else:
        break
print(val1, val2)


a) 2 GFGNO 
b) 2.33 GFGNOG 
c) 2.33 GFGNONoneGTrue 
d) 2.33 GFGNO 

Ans: (d) 
Explanation: val1 will only have integer and floating values val1 = 1 + 1.33 + 0 = 2.33 and val2 will have string
             values val2 ='GFG' + 'NO' = 'GFGNO'. String 'G' will not be part of val2 as the for loop will break at None,
             thus 'G' will not be added to val2.

3) What is the output of the following program? 

Python3




L1 = [1, 2, 3, 4]
L2 = L1
L3 = L1.copy()
L4 = L3
L1[0] = [5]
print(L1, L2, L3, L4)


a) [5, 2, 3, 4] [5, 2, 3, 4] [1, 2, 3, 4] [1, 2, 3, 4] 
b) [[5], 2, 3, 4] [[5], 2, 3, 4] [[5], 2, 3, 4] [1, 2, 3, 4] 
c) [5, 2, 3, 4] [5, 2, 3, 4] [5, 2, 3, 4] [1, 2, 3, 4] 
d) [[5], 2, 3, 4] [[5], 2, 3, 4] [1, 2, 3, 4] [1, 2, 3, 4] 

Ans: (d) 
Explanation: L2 is the reference pointing to the same object as L1,
             while L3 and L4 are single recursive Copy(Shallow Copy) of List L1.
             L1[0] = [5], implies that at index 0, list [5] will be present and not integer value 5.

4) What is the output of the following program?  

PYTHON




import sys
L1 = tuple()
print(sys.getsizeof(L1), end = " ")
L1 = (1, 2)
print(sys.getsizeof(L1), end = " ")
L1 = (1, 3, (4, 5))
print(sys.getsizeof(L1), end = " ")
L1 = (1, 2, 3, 4, 5, [3, 4], 'p', '8', 9.777, (1, 3))
print(sys.getsizeof(L1))


a) 0 2 3 10 
b) 32 34 35 42 
c) 48 64 72 128 
d) 48 144 192 480 

Ans: (c) 
Explanation: An Empty Tuple has 48 Bytes as Overhead size and each additional element requires 8 Bytes. 
(1, 2) Size: 48 + 2 * 8 = 64 
(1, 3, (4, 5)) Size: 48 + 3 * 8 = 72 
(1, 2, 3, 4, 5, [3, 4], 'p', '8', 9.777, (1, 3)) Size: 48 + 10 * 8 = 128 

5) What is the output of the following program?  

PYTHON




T1 = (1)
T2 = (3, 4)
T1 += 5
print(T1)
print(T1 + T2)


a) TypeError 
b) (1, 5, 3, 4) 
c) 1 TypeError 
d) 6 TypeError 

Ans: (d) 
Explanation: T1 is an integer while T2 is tuple. Thus T1 will become 1 + 5 = 6. But an integer and tuple cannot be added, it will throw TypeError.

 

 



Last Updated : 11 Mar, 2022
Like Article
Save Article
Previous
Next
Share your thoughts in the comments
Similar Reads