【问题标题】:Python: what does putting [square] brackets around an object do?Python:在对象周围放置 [方] 括号有什么作用?
【发布时间】:2023-04-11 05:21:02
【问题描述】:

我正在将代码从 Python 翻译成 Lua,但我无法弄清楚这行代码的作用:

results = [node]

为了提供上下文,这是在 Pascal 解释器的解析器中。我正在翻译教程中的这段代码,试图让我的头脑围绕着解释器。 node 是一个对象,表示抽象语法树中的一个节点。我不确定括号的作用。

Here 是本教程此时解释器的完整代码。我正在查看的行是 255。

【问题讨论】:

  • 语法似乎表明它正在填充列表w3schools.com/python/python_lists.asp
  • 变量节点是对对象的引用,而不是对象本身。 [node] 正在形成一个包含该引用的单个元素列表。 results 设置为引用该单个元素列表。
  • 抱歉学究气(脚注 A),但“括号”是任何东西的通用术语。这将包括方括号(您要询问的内容)、括号、大括号以及可能的其他内容。如果您的标题更具体,可能会更好。脚注 A:我真的不是,这只是我的天性,虽然这对神经型患者来说很烦人 :-)
  • paxdiablo 我一直将它们称为圆括号、方括号和大括号,但如果方括号是一个通用术语,我只会说方括号。也许它们都应该是形状:圆括号、方括号和???括号。谢谢

标签: python object initialization brackets


【解决方案1】:

这将创建一个仅包含 node 对象的元素列表。大概results应该是一个列表。

【讨论】:

  • vonbrand 这很有意义。我稍后会回来解决这个问题,或者如果它不起作用,我会报告。
  • 除了这些在 Python 中被称为列表而不是数组的事实之外,这是一个很好的答案。做出微小的改变。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-03-29
  • 1970-01-01
  • 2023-03-19
  • 2016-04-22
  • 1970-01-01
  • 1970-01-01
  • 2020-10-26
相关资源
最近更新 更多