Câu hỏi trắc nghiệm Python trên bản sao nông so với bản sao sâu.
1. Loại bản sao nào được hiển thị trong mã Python sau đây?
l1=[[10, 20], [30, 40], [50, 60]] ls=list[l1] ls [[10, 20], [30, 40], [50, 60]]
a] copyb nông] COPYC DEEP] Thành viên Đối với bản sao sâu, lệnh được đưa ra là: l2 = l1.copy [].
b] Deep copy
c] memberwise
d] All of the mentioned
Answer: a
Clarification: The code shown above depicts shallow copy. For deep copy, the command given is: l2 = l1.copy[].
2. Đầu ra của mã Python sau đây là gì?
l=[2, 3, [4, 5]] l2=l.copy[] l2[0]=88 l l2
một]
[88, 2, 3, [4, 5]] [88, 2, 3, [4, 5]]
b]
[2, 3, [4, 5]] [88, 2, 3, [4, 5]]
c]
[88, 2, 3, [4, 5]] [2, 3, [4, 5]]
d]
[2, 3, [4, 5]] [2, 3, [4, 5]]
Xem câu trả lời
Trả lời: Bclarization: Mã được hiển thị ở trên mô tả bản sao sâu. Trong bản sao sâu, địa chỉ cơ sở của các đối tượng không được sao chép. Do đó, việc sửa đổi được thực hiện trong một danh sách không ảnh hưởng đến danh sách khác.
Clarification: The code shown above depicts deep copy. In deep copy, the base address of the objects is not copied. Hence the modification done on one list does not affect the other list.
3. Trong _____________ Sao chép, địa chỉ cơ sở của các đối tượng được sao chép. Trong bản sao _____________, địa chỉ cơ sở của các đối tượng không được sao chép.a] sâu. nông] thành viên, nông cạn] nông, sâu] Deep, Thành viên cho bản sao nông.
a] deep. shallow
b] memberwise, shallow
c] shallow, deep
d] deep, memberwise
Answer: c
Clarification: In shallow copy, the base address of the objects are copied.
In deep copy, the base address of the objects are not copied.
Note that memberwise copy is another name for shallow copy.
4. Danh sách lồng nhau trải qua bản sao nông ngay cả khi toàn bộ danh sách trải qua bản sao sâu. Do đó, tuyên bố này là đúng.
a] True
b] False
Answer: a
Clarification: A nested list undergoes shallow copy even when the list as a whole undergoes deep copy. Hence, this statement is true.
5. Điều gì sẽ là đầu ra của mã Python sau đây và nêu loại bản sao được mô tả?
l1=[2, 4, 6, 8] l2=[1, 2, 3] l1=l2 l2
a] [2, 4, 6, 8], copyb nông] [2, 4, 6, 8], sao chép sâu] [1, 2, 3], sao chép nông] [1, 2, 3], sao chép sâu CCLARIZE: Mã được hiển thị ở trên mô tả bản sao nông và đầu ra của mã là: [1, 2, 3].
b] [2, 4, 6, 8], deep copy
c] [1, 2, 3], shallow
copy
d] [1, 2, 3], deep copy
Answer: c
Clarification: The code shown above depicts shallow copy and the output of the code is: [1, 2, 3].
6. Đầu ra của mã Python sau đây là gì?
l1=[10, 20, 30] l2=l1 id[l1]==id[l2] l2=l1.copy[] id[l1]==id[l2]
a] Sai, falseB] false, truec] true, tried] true, falseanswer: dclarization: mã đầu tiên được hiển thị ở trên đại diện cho bản sao nông. Do đó, đầu ra của ID biểu thức [L1] == ID [L2] là đúng. Mã thứ hai mô tả bản sao sâu. Do đó, đầu ra của ID biểu thức [l1] == id [l2] trong trường hợp thứ hai là sai.
b] False, True
c] True, True
d] True, False
Answer: d
Clarification: The first code shown above represents shallow copy. Hence the output of
the expression id[l1]==id[l2] is True. The second code depicts deep copy. Hence the output of the expression id[l1]==id[l2] in the second case is False.
7. Đầu ra của mã Python sau đây là gì?
l1=[1, 2, 3, [4]] l2=list[l1] id[l1]==id[l2]
a] TrueB] Falsec] Errrord] Địa chỉ của L1ANSWER: Bclarization: Mã được hiển thị ở trên cho thấy một danh sách lồng nhau. Một danh sách lồng nhau sẽ trải qua bản sao nông khi toàn bộ danh sách trải qua bản sao sâu. Do đó, đầu ra của mã này là sai.
b] False
c] Error
d] Address of l1
Answer: b
Clarification: The code shown above shows a nested list. A nested list will undergo shallow copy when the list as a whole undergoes
deep copy. Hence the output of this code is False.
8. Đầu ra của mã Python sau đây là gì?
l1=[10, 20, 30, [40]] l2=copy.deepcopy[l1] l1[3][0]=90 l1 l2
một]
l=[2, 3, [4, 5]] l2=l.copy[] l2[0]=88 l l20
b]
c]
l=[2, 3, [4, 5]] l2=l.copy[] l2[0]=88 l l21
d]
l=[2, 3, [4, 5]] l2=l.copy[] l2[0]=88 l l22
Xem câu trả lời
Trả lời: Bclarization: Mã được hiển thị ở trên mô tả bản sao sâu. Trong bản sao sâu, địa chỉ cơ sở của các đối tượng không được sao chép. Do đó, việc sửa đổi được thực hiện trong một danh sách không ảnh hưởng đến danh sách khác.
Clarification: The code shown above depicts deep copy. Hence at the end of the code, l1=[10, 20, 30, [90]] and l2=[10, 20, 30, [40]].
3. Trong _____________ Sao chép, địa chỉ cơ sở của các đối tượng được sao chép. Trong bản sao _____________, địa chỉ cơ sở của các đối tượng không được sao chép.a] sâu. nông] thành viên, nông cạn] nông, sâu] Deep, Thành viên cho bản sao nông.
a] shallow, deep
b] memberwise, shallow
c] deep, shallow
d] deep, memberwise
Answer: a
Clarification: In shallow copy, the modification done on one list affects the other list. In deep copy, the modification done on one list does not affect the other list.
4. Danh sách lồng nhau trải qua bản sao nông ngay cả khi toàn bộ danh sách trải qua bản sao sâu. Do đó, tuyên bố này là đúng.
l=[2, 3, [4, 5]] l2=l.copy[] l2[0]=88 l l23
một]
l=[2, 3, [4, 5]] l2=l.copy[] l2[0]=88 l l24
b]
l=[2, 3, [4, 5]] l2=l.copy[] l2[0]=88 l l25
c]
l=[2, 3, [4, 5]] l2=l.copy[] l2[0]=88 l l26
d]
l=[2, 3, [4, 5]] l2=l.copy[] l2[0]=88 l l27
Xem câu trả lời
Trả lời: Bclarization: Mã được hiển thị ở trên mô tả bản sao sâu. Trong bản sao sâu, địa chỉ cơ sở của các đối tượng không được sao chép. Do đó, việc sửa đổi được thực hiện trong một danh sách không ảnh hưởng đến danh sách khác.
Clarification: In the code shown above, the list l1 is enclosed in a tuple. When we print this list, it is printed as [1, 2, 3, 4]. Note the absence of the tuple. The code shown depicts deep copy. Hence the output of this program is: l1=[1, 2,
3, 4] and l2=[1, 2, 3, 4].
3. Trong _____________ Sao chép, địa chỉ cơ sở của các đối tượng được sao chép. Trong bản sao _____________, địa chỉ cơ sở của các đối tượng không được sao chép.a] sâu. nông] thành viên, nông cạn] nông, sâu] Deep, Thành viên cho bản sao nông.
l=[2, 3, [4, 5]] l2=l.copy[] l2[0]=88 l l28
4. Danh sách lồng nhau trải qua bản sao nông ngay cả khi toàn bộ danh sách trải qua bản sao sâu. Do đó, tuyên bố này là đúng.
b] True
c] 1
d] An exception is thrown
Answer: a
Clarification: The above piece of code checks recursively whether a number is even or odd.
5. Điều gì sẽ là đầu ra của mã Python sau đây và nêu loại bản sao được mô tả?
a] n=0
b] n=1
c] A list of length one
d] An empty
list
Answer: c
Clarification: Merge Sort algorithm implements the recursive algorithm and when the recursive function receives a list of length 1 which is the base case, the list is returned.
a] [2, 4, 6, 8], copyb nông] [2, 4, 6, 8], sao chép sâu] [1, 2, 3], sao chép nông] [1, 2, 3], sao chép sâu CCLARIZE: Mã được hiển thị ở trên mô tả bản sao nông và đầu ra của mã là: [1, 2, 3].
l=[2, 3, [4, 5]] l2=l.copy[] l2[0]=88 l l29
6. Đầu ra của mã Python sau đây là gì?
b] [5,4,3,2,1]
c] []
d] Error, lambda functions can’t be called recursively
Answer:
c
Clarification: The above piece of code appends the first element of the list to a reversed sublist and reverses the list using recursion.