【问题标题】:What is L[L[3]] in a list?列表中的 L[L[3]] 是什么?
【发布时间】:2012-04-15 19:49:32
【问题描述】:

我现在正在准备计算机科学的期末考试,但我完全不明白这是怎么回事:

L = [ 8、6、7、5、3、0、9] 30. L[L[3]] - 1 是? (一) * -1 (B) 错误 (三) 8 (D) 4 (五) 7

答案是 -1.. 所以为了测试它是如何工作的,我刚刚做了 L[L[3]],答案是 0,然后我做了 L[L[4]] 并且 thar 等于 5,然后我做了L[L[1]] 给出了 9 但如果我去 L[L[2]] 我得到一个列表索引超出范围错误。我在这里很困惑有人可以帮忙吗?

【问题讨论】:

    标签: python python-3.x


    【解决方案1】:

    L[3]5L[L[3]]L[5]00 - 1-1

    【讨论】:

      【解决方案2】:

      这类问题最好一次一步解决,由内而外。

      所以,L[3] 给你 5。再次使用这个值 (5) 作为列表中的索引,即 L[5],这给你 0。最后,0 - 1 = -1,你的答案.

      【讨论】:

        【解决方案3】:

        这类似于 function composition 的数学函数(例如 f(g(x)))。

        我们取出列表并从内到外工作,所以我们得到L[L[3]] -> L[5] -> 0,然后从中减去一个得到-1

        当你采取下一个例子时,L[L[1]] = L[6] -> 9。最后,L[L[2]] = L[7] -> IndexError

        这一切都是关于从内到外评估复合索引(或函数,就此而言)。

        【讨论】:

          【解决方案4】:

          L[2] = 7 并且列表只有 7 个元素,即索引 0..6。所以访问 L[L[2]] = L[7] 超出范围...

          【讨论】:

            【解决方案5】:

            它说,得到 l[3] 的数字是 5,然后使用它,所以得到 l[5] 的数字是 0,然后减去 1.... ta dah!

            【讨论】:

              【解决方案6】:

              让我们通过显示中间结果来了解答案,即使它们没有显示出来:

              L[3] 是 5,因此 L[L[3]]L[5] = 0L[L[3]] -1 = 0-1 = -1

              【讨论】:

                【解决方案7】:

                以下是按步骤分解的答案:

                L = [ 8, 6, 7, 5, 3, 0, 9]

                L[L[3]] - 1 = -1

                L[3] = 5,所以 L[L[3]] = L[5] = 0

                【讨论】:

                  猜你喜欢
                  • 2013-05-04
                  • 2015-03-06
                  • 1970-01-01
                  • 2017-09-19
                  • 1970-01-01
                  • 2014-05-25
                  • 2010-11-01
                  • 2011-08-23
                  • 2014-05-18
                  相关资源
                  最近更新 更多