python中的文字是什么?

python中的文字是什么?,python,Python,python中的文字到底是什么?我在google和python文档中搜索了答案,但google只引用字符串文本,python文档没有明确说明文本是什么。我看到这一页提供了以下答案: 对象也称为数据结构。Python附带了一些内置对象。其中一些经常使用,因此Python有一种快速生成这些对象的方法,称为文本。文本包括字符串、unicode字符串、整数、浮点、长、列表、元组和字典类型 这是正确的吗?我可以假设文字只是python内置对象的另一个术语吗?是否还有其他文字未包含在说明中?我的印象是,有一

python中的文字到底是什么?我在google和python文档中搜索了答案,但google只引用字符串文本,python文档没有明确说明文本是什么。我看到这一页提供了以下答案:

对象也称为数据结构。Python附带了一些内置对象。其中一些经常使用,因此Python有一种快速生成这些对象的方法,称为文本。文本包括字符串、unicode字符串、整数、浮点、长、列表、元组和字典类型


这是正确的吗?我可以假设文字只是python内置对象的另一个术语吗?是否还有其他文字未包含在说明中?我的印象是,有一种东西是二进制文字,布尔也被认为是文字。

在这种情况下,我认为这只是意味着Python解析器接受这些实体的内置语法。例如,
“abc”
是一个
str
123
是一个
int
1.2
是一个
float
,等等。

文本是解析器识别为直接编写对象的语法。Python 2中的一些示例:

  • 0
    1
    2
    3
    int
    文字)
    • -1
      -2
      等本身不是文字,而是涉及一元
      -
      运算符的表达式
  • 5j
    3.14j
    (非负纯虚
    复数
    文字)
    • 其他复杂值,如
      2+3j
      2-3j
      -5j
      ,都是表达式 涉及多个运营商
  • 3.5
    -2.7
    float
    literals)
  • “你好”
    str
    文字)
  • u”“
    u“hello”
    unicode
    文字)
  • None
    (我认为这是一个文字,而不是一个关键字或简单的名称。)
其他类似文字的表达式称为displays,用于创建各种容器。它们不是真正的文字,因为它们可以包含非文字表达式(例如,
[x,y]

  • []
    [1,2]
    列表
    显示)
  • ()
    (1,)
    (1,2)
    元组
    显示)
  • {}
    {'a':2}
    dict
    显示)
  • {1,2,3}
    set
    display在Python2.7中引入)
空集没有文字或显示,因为明显的符号是
{}
已经有一个
dict
显示。Python 2没有真正的布尔文本
True
False
只是布尔对象的内置名称。元组在技术上是由逗号创建的,只有在需要消除表达式歧义时才需要括号;例外情况是空元组
()

请参阅phihag的答案,了解Python 3中的一些差异。

literal。文字是一种简洁且容易看到的写入值的方式。例如,可以使用
int()
构造值0,但是
0
更方便

在Python中,以下文字可用:

  • 字符串文本,例如
    'Düsseldorf'
    u'Köln'
    (第一个是Python 2.x中的字节字符串文本)
  • 字节字符串文本,如
    b'\x89PNG'
  • 整数文本,如
    42
    1_234
    0x2a
    0b101010
  • 浮动文字,如
    1.2e-19
  • 文本,如
    2.3j
  • 布尔文本:
    True
    False
    (在较早的(2.x)Python版本中不是文本)
  • None
  • 元组:
    (1,2,3)
  • 列表:
    [1,2,3]
  • 格言:
    {1:'1',2:'2'}
  • 集合:
    {1,2,3}
我可以假设文字只是python内置对象的另一个术语吗

接近。它们是编写(某些)Python内置对象的一种方式。如果您需要,比如说,一个特定的数字,而您不是从文件或用户处读取它,或者从数据库获取它,或者计算它,或者从另一个模块导入它,或者。。。您可以使用数字文字将其放在代码中

number = 42
number
这里是整数42,使用文本指定

Python的
True
False
值(和
None
)实际上不是文字,而是这些值的预定义名称。但概念是相似的:Python提供了一种将这些值直接写入代码的方法

number = 42

几乎所有编程语言的大多数常用类型都有文本。

不同之处在于构造函数-请参阅它的后续部分。文本是在创建特定数据类型的语言语法规范中定义的东西。因此,您无法重命名或更改它。考虑<代码> []/COD>和 List](/CODE)之间的区别:前者总是创建一个列表,而后者必须查找“<代码>列表 >作为默认值将构造一个列表,但如果<代码>列表被重新分配到别处,则不一定这样做。更重要的是,和那个不同。因为寻找这个问题的人不一定知道——事实上很可能不知道——文字常量和文字常量基本上是相同的。谢谢,这很好地解释了它!这和phihag的已经澄清了什么是文字这一次。。。经过这么多的搜索。。。谢谢我不相信
-3
在Python中是整数文本。它是