什么是python中的文本?

2024-04-20 09:35:17 发布

您现在位置:Python中文网/ 问答频道 /正文

我是一名新程序员,目前正在研究python的细微差别。我的问题是,python中的文字到底是什么?我在google和python文档中搜索了答案,但是google只是引用字符串文本,python文档并没有明确说明什么是文本。我看到这一页http://www.dalkescientific.com/writings/NBN/python_intro/literals.html提供了以下答案:

Objects are also called data structures. Python comes with some built-in objects. Some are used so often that Python has a quick way to make these objects, called literals. The literals include the string, unicode string, integer, float, long, list, tuple and dictionary types.

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


Tags: 字符串答案文档文本httpstringobjectswww
3条回答

文字is a language-independent programming term。文字是一种简洁明了的写值方式。例如,可以用int()构造值0,但是0更方便。

在Python中,可以使用以下文字:

  • 字符串文字,例如'Düsseldorf'u'Köln'(第一个是Python 2.x中的字节字符串文字)
  • 字节字符串文本,如b'\x89PNG'
  • 整数文本,如-12
  • 浮动文本,如1.2e-19
  • Complex文本,如1+2.3j
  • 布尔文本:TrueFalse(不是较旧(2.x)Python版本中的文本)
  • None
  • 元组:(1, 2, 3)
  • 列表:[1, 2, 3]
  • 格言:{1: 'one', 2: 'two'}
  • 集合:{1, 2, 3}

Can I assume that literals are just another term for python's built-in objects?

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

number = 42

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

Python的TrueFalse值(和None)不是真正的文本,而是这些值的预定义名称。但是这个概念是相似的:Python提供了一种直接将这些值写入代码的方法。

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

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

  • -3-2-10123int文字)
  • 2+3j0+5j2j-3-5jcomplex文字)
  • 3.5-2.7float文本)
  • """hello"str文字)
  • u""u"hello"unicode文字)
  • [][1,2]list文字)
  • ()(1,)(1,2)tuple文字)
  • {}{'a': 2}dict文本)
  • {1,2,3}set在Python 2.7中引入的文字)
  • None(I认为这被视为一个文本,而不是一个关键字或简单的名称。)

空集合没有文本,因为显而易见的符号{} 已经是一个dict文本。Python 2没有真正的布尔文本;TrueFalse只是布尔对象的内置全局名称。元组在技术上是由逗号创建的,只有在需要消除表达式的歧义时,括号才是必需的;例外情况是空元组()

关于Python 3中的一些差异,请参见phihag的答案。

相关问题 更多 >