为什么Python文档将[1,2]称为列表“显示”而不是“文字”?

时间:2019-11-07 16:43:01

标签: python list dictionary set literals

Python文档将[1, 2]称为“ list display”。

类似地,它将{1, 2}称为“ set display”,将{1:'a', 2:'b'}称为“ dictionary display”。

为什么使用“显示”而不是更常见的术语“文字”?

1 个答案:

答案 0 :(得分:2)

preceding section的第一段开始:

  

对于构造列表,集合或字典,Python提供了特殊的   语法称为“展示广告”,每种都有两种风格:

     
      
  • 明确列出容器的内容,或
  •   
  • 他们是   通过一组循环和过滤指令(称为   理解力。
  •   

显示是一个通用术语,包含“文字”和理解力。

[1, foo(x), "bar"]是列表文字(忽略foo(x)必须首先求值的事实)。

[foo(x) for x in A]是列表理解。

都是列表显示。


正如@ r.ook所指出的那样,严格来说,该语言保留了literal一词,用于产生类型为str和{{1 }}。

如果您想解释为什么int是文字而不是f'{x}'的话,常量是至关重要的。前者是在运行时计算的,但是结果字符串是固定的,而[1]可以在编译时创建一个列表,但是该列表可以在以后进行更改。