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

• Difficulty Level : Medium
• Last Updated : 11 Mar, 2022

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 denotes [1, [2, 3], 4], L1 denotes [2, 3],
L1 = 3 and L1 = 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) [, 2, 3, 4] [, 2, 3, 4] [, 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) [, 2, 3, 4] [, 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 = , implies that at index 0, list  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.```

This article is contributed by Piyush Doorwar. If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.