(a)
None
The extend() function is used to add multiple elements within another list. It adds the elements of L2 to L1, but it does not return a new list. Since the returned value is assigned to L3, the value of L3 becomes None.
(b)
['e', 'i', 'o', 12, 13, 14]
Step 1: L1[1:4]
List slicing extracts elements from the initial index up to (final index − 1). Here, elements are extracted from index 1 to 3.
L1 = ['a', 'e', 'i', 'o', 'u']
Index positions:
0 → 'a'
1 → 'e'
2 → 'i'
3 → 'o'
4 → 'u'
So, L1[1:4] gives: ['e', 'i', 'o']
Step 2: L2[::]
When no initial and final index is given, all elements of the list are extracted.
L2 = [12, 13, 14]
So, L2[::] gives: [12, 13, 14]
Step 3: + Operator
The + operator is used for concatenation, i.e., to join two lists together to form a single list. Therefore, ['e', 'i', 'o'] + [12, 13, 14] = ['e', 'i', 'o', 12, 13, 14].
(c)
['a', 'o', 'u']
The del keyword is used to delete elements from a list either at a specified index or within a range of indexes. When a range is given, elements from the initial index up to (final index − 1) are deleted. Here, del L1[1:3] deletes elements from index 1 to 2, i.e., 'e' and 'i' from the list ['a', 'e', 'i', 'o', 'u']. Hence, the remaining list becomes ['a', 'o', 'u'].
(d)
[12, 13, 14, 12, 13, 14]
List replication is the system of duplicating the elements of the list (i.e., appending the list with the elements of the same list). It is done with the help of the * operator. Therefore, 2*L2 duplicates the elements of the list [12, 13, 14] and results in [12, 13, 14, 12, 13, 14].