Python 列表中的L[L[3]]是什么?
我现在正在为计算机科学期末考试而学习,我根本不明白这是怎么回事: L = [ 8, 6, 7, 5, 3, 0, 9 ] 30. L[L[3]] - 1 is? (A) * -1 (B) an error (C) 8 (D) 4 (E) 7 L=[8,6,7,5,3,0,9] 30L[L[3]]-1是什么? (A) *-1 (B) 错误 (C) 八, (D) 四, (E) 七,Python 列表中的L[L[3]]是什么?,python,python-3.x,Python,Python 3.x,我现在正在为计算机科学期末考试而学习,我根本不明白这是怎么回事: L = [ 8, 6, 7, 5, 3, 0, 9 ] 30. L[L[3]] - 1 is? (A) * -1 (B) an error (C) 8 (D) 4 (E) 7 L=[8,6,7,5,3,0,9] 30L[L[3]]-1是什么? (A) *-1 (B) 错误 (C) 八, (D) 四, (E) 七, 答案是-1。。所以为了测试它是如何工作的,我只做了L[L[3]],答案是0,然后我做了L[L[4]],塔尔等于5,然
答案是-1。。所以为了测试它是如何工作的,我只做了L[L[3]],答案是0,然后我做了L[L[4]],塔尔等于5,然后我做了L[L[1]],结果是9,但如果我做了L[L[2]],我会得到一个列表索引超出范围的错误。我一点也不困惑,有人能帮忙吗?
L[3]
是5
,L[L[3]
是L[5]
是0
,0-1
是-1让我们通过显示中间结果来浏览答案,即使它们没有显示:
L[3]
是5,L[L[3]
因此是L[5]=0
,而L[3]-1=0-1=-1
L[2]=7,列表只有7个元素,即表示0..6。所以访问L[L[2]]=L[7]超出范围…它说,得到L[3]处的数字是5,然后使用它,所以得到L[5]处的数字是0,然后减去1。。。。塔达 这类问题最好一步一个脚印地从里到外解决
所以,L[3]给你5。再次使用该值(5)作为列表的索引,即L[5],这将为您提供0。最后,0-1=-1,你的答案。这类似于数学函数(例如f(g(x)))
我们将列表从内到外进行计算,得到L[L[3]->L[5]->0
,然后从中减去一得到-1
以下一个为例,L[L[1]]=L[6]>9
。最后,L[L[2]]=L[7]->索引器
这一切都是关于从内到外评估一个复合索引(或函数)
L=[8,6,7,5,3,0,9]
L[L[3]]-1=-1
L[3]=5,所以L[L[3]=L[5]=0