python3之python的核心数据类型
----------
上面所列内容并不完整,因为
在python程序中处理的每样东西都是一种对象。例如,在python中进行文本模式匹配时,创建了模式对象,还有进行网络脚本编程时,使用了套接字对象。其他类型的对象往往都是通过导入或使用模块来建立的,而且它们都有各自的行为。后面的部分将要介绍,像函数、模块和类这样的编程单元在python中也是对象,它们由def,class,import和lambda这样的语句和表达式创建,并且可以在脚本间自由地传递,存储在其他对象中。
通常我们把上表中的对象类型称作是核心数据类型,因为它们是在python语言内部高效创建的,也就是说,有一些特定语法可以生成它们。例如,运行下面的代码:
同等重要的是,一旦创建了一个对象,它就和操作集合绑定了---只可以对字符串进行字符串相关的操作,对列表进行列表相关的操作。就像你将会学到的, python是动态类型的(它自动地跟踪你的类型而不是要求声明代码), 但是它也是强类型语言(你只能对一个对象进行适合该类型的有效的操作)。
----------
下表是python的内置对象类型和一些编写其常量所使用的语法。
对象类型 |
例子 常量/创建 |
数字 |
1234, 3.1415, 3+4j, Decimal, Fraction |
字符串 |
'spam', "guido's" |
列表 |
[1,[2,'three'],4] |
字典 |
{'food':'spam','taste':'yum'} |
元组 |
(1,'spam',4,'U') |
文件 |
myfile=open('eggs','r') |
集合 |
set('abc'),{'a','b','c'} |
其它类型 |
类型,None,布尔型 |
编程单元类型 |
函数,模块,类 |
与实现相关的类型 |
编译的代码堆栈跟踪 |
通常我们把上表中的对象类型称作是核心数据类型,因为它们是在python语言内部高效创建的,也就是说,有一些特定语法可以生成它们。例如,运行下面的代码:
>>>'spam'
从技术上讲,你正在运行一个常量表达式,这个表达式生成并返回一个新的字符串对象。这是python用来生成这个对象的一个特定语法。类似地,一个方括号中的表达式会生成一个列表,大括号中的表达式会建立一个字典等。尽管这样,就像我们看到的那样,
python中没有类型声明,
运行的表达式的语法决定了创建和使用的对象的类型。
同等重要的是,一旦创建了一个对象,它就和操作集合绑定了---只可以对字符串进行字符串相关的操作,对列表进行列表相关的操作。就像你将会学到的, python是动态类型的(它自动地跟踪你的类型而不是要求声明代码), 但是它也是强类型语言(你只能对一个对象进行适合该类型的有效的操作)。