我目前正在学习python,以备面试之用。关于python中的列表,我试着将我的头围绕在下面:
  
  
  
  arr = [1,2,3,9,10,12]
for i in arr:
  arr.remove(i)
  
   这就产生了列表[2,9,12],但是:
  
  arr = [1,2,3,9,10,12]
for i in list(arr):
  arr.remove(i)
  
   这将生成所需的空列表[]。有人能解释为什么吗?既然remove()按项值移除,那么以第一种方式迭代列表是否也会导致空列表?
  
  
   免责声明,我正在通过HackerRank使用Python3测试这一切。