不确定这是否属于这里,但这是我CS考试的一个问题。
此代码后
xs[100]
的价值是多少?xs = [-1, 0, 1] for k in range(98): xs.append(xs[k])
- 导致编译时错误。
- 导致运行时错误。
–1
0
- 醇>
1
到目前为止,我认为xs.append(xs[k])
会依次将-1
,0
,1
添加到列表xs
中。我该如何解决这个问题?
答案 0 :(得分:1)
这不是你需要问的问题,你可以用Python运行它,看看:
pax$ cat qq.py
xs = [-1, 0, 1]
for k in range(98):
xs.append(xs[k])
print xs[100]
pax$ python qq.py
0
如果您无法运行它出于某种原因,您只需要意识到您要按顺序追加这些元素98次。那是-1, 0, 1
32次(总共96次),然后-1
和0
作为最后两次。
而且,由于你有3 + 98 = 101
个元素,索引100(第101个)是最后一个元素,即0
。
答案 1 :(得分:0)
在此循环之后,您将有一个包含98+3=101
元素的列表,其中100的元素将是0
,因为101%3= 2
。然后您必须从{{中选择第二个元素1}}
注意列表的-1,0,1
方法将就地更改列表,因此在每次迭代后,您将迭代新列表,因此它不会引发append