📜  Python-测验| Python列表测验|问题 5

📅  最后修改于: 2022-05-13 01:58:11.388000             🧑  作者: Mango

Python-测验| Python列表测验|问题 5

问题:5找出以下程序的输出:

check1 = ['Learn', 'Quiz', 'Practice', 'Contribute'] 
check2 = check1 
check3 = check1[:] 
  
check2[0] = 'Code'
check3[1] = 'Mcq'
  
count = 0
for c in (check1, check2, check3): 
    if c[0] == 'Code': 
        count += 1
    if c[1] == 'Mcq': 
        count += 10
  
print (count) 

(一) 4
(乙) 5
(三) 11
(四) 12答案: (D)
说明:将 check1 分配给 check2 时,我们创建了对同一列表的第二个引用。对 check2 的更改会影响 check1。将 check1 中所有元素的切片分配给 check3 时,我们正在创建 check1 的完整副本,该副本可以独立修改(即,check3 中的任何更改都不会影响 check1)。
因此,在检查 check1 时,'Code' 匹配并且计数增加到 1,但 Mcq 没有匹配,因为它仅在 check3 中可用。
现在在这里检查 check2 也匹配“代码”,导致计数值为 2。
最后,在检查与 check1 和 check2 分开的 check3 时,只有 Mcq 匹配并且计数变为 12。
这个问题的测验