Python语言入门之内置数据类型
1. 字典(dictionary)
Dictionary 是 Python 的内置数据类型之一,它定义了键和值之间一对一的关系。它的作用类似于C++ STL里的map容器. 就是一组key和value以及它们之间的映射。它的特点是:key具有唯一性;相同的value可具有不同的key值,但不同的value不可能对应一个key.如:
>>>dict2={'name':'earth','name':'sky'}
>>>print(dict2)
{'name':'sky'}
其他例子如下:
>>> d ={"server":"mpilgrim","database":"master"}
>>> d
{'server': 'mpilgrim', 'database': 'master'}
>>> d["server"]
'mpilgrim'
>>> d["database"]
'master'
>>> d["mpilgrim"]
Traceback (innermost last):
File"<interactive input>", line 1, in ?
KeyError: mpilgrim
2. 列表(list)
C++没有完全对应的结构。有些类似的可能是std的vector和list.
不同主要有以下几点:
(1)C++ 标准库的vector和list都只可用来存放一组类型相同的数据。
Python的list则不然,可以包含任何类型的元素。如下例所示:
[10, 20,30, 40]
["spam","bungee", "swallow"]
["hello",2.0, 5, [10, 20]]
(2)Python List的index可以是任意的整型表达式,若为负数,则总后向前数
(3)可以使用指定上下限的方式来获得一个List的Slice。并且可以通过slice的方式对list进行批量增加或删除
3. 元组(tuple)
Tuple 是不可变的 只读list。一旦创建了一个 tuple,就不能以任何方式改变它。
Tuple 可以转换成 list,反之亦然。内置的tuple
函数接收一个 list,并返回一个有着相同元素的tuple。而list
函数接收一个 tuple 返回一个 list。从效果上看,tuple
冻结一个 list,而list
解冻一个 tuple。
使用 tuple 有什么好处呢?
例子:
>>> tuple = ('a', 'b', 'c', 'd', 'e')
>>> tuple[1:3]
('b', 'c')
>>> tuple = ('A',) + tuple[1:]
>>> tuple
('A', 'b', 'c', 'd', 'e')
4. 总结
Dictionary,list 和tuple 都是python语言内置的数据容器类型之一。其中tuple和list以数值顺序索引,而字典通过所选择的键值key进行索引的。
List 和tuple 都是数据序列,且可相互转换,但tuple不可改变其元素的值。字典以大括号“{”作为标记,tuple以小括号“(”作为标记,列表以中括号“[”作为标记。