Python 中有六个标准的数据类型:
- Number(数字)
- String(字符串)
- List(列表)
- Tuple(元组)
- Sets(集合)
- Dictionary(字典)
在Python中定义变量的时候,变量是无需声明的,并且变量没有类型指明,我们所说的数据类型是指变量所存储的内存中的对象类型,比如是存的数字,字符串或者是数组集合。其中Number 又支持 int、float、bool、complex(复数)
判断Python 数据类型方法:
import types
type(x) is types.IntType # 判断是否int 类型
type(x) is types.StringType #是否string类型
type(x) is types.TupleType #是否tuple类型
type(x) is types.ListType #是否list类型
type(x) is types.FloatType #是否float 类型
………
Python中常用的几个数据集合:
- list
- tuple
- set
- dictionary
1.list
list是Python中最常见的类型了。
- 创建
list1 = ["str1", "str2", "str3"]
list2 = ["name", "ID", 1024, 1080]
list3 = [1, 2, 3, 4, 5]
list_null = [] #空list
list_one_ele = [1] #单元数list
- 访问元素
>>> list1[0] # 访问list1列表中的第一个元素
'str1'
>>> list2[-1] #访问list2列表中的最后个元素,负数idx从右边开始数
1080
>>> list3[-2] #访问list3列表中的倒数第二个元素
4
>>> list3[1:]
[2,3,4,5]
- 增减元素
追加到末尾:
>>> list1.append("new_element")
追加到指定位置:
>>> list2.insert(1, "new_element")
删除指定元素:
>>> del list1[1]
>>> list1.remove('str2')
删除并返回最后一个元素:
>>> list1.pop()
- 修改元素
直接赋值相应元素
>>> list2[1] = 'date'
- 嵌套list
list可以组合嵌套,即一个大的list可以包含若干个小的list,大list中每个元素也是list。其实单个数也可以看出一个只包含一个元素的list。
>>> a = [1, 2, 3]
>>> b = ['a', 'b', 'c']
>>> x = [a, b]
>>> len(x) #总共list个数
2
>>> len(x[0]) #第一个list长度
3
>>> x[0]
[1, 2, 3]
>>> x[1][0]
'a'
>>> y = [x, 'str', 3]
>>> len(y)
4
list 运算
Python表达式 结果 描述 len([1, 2, 3]) 3 list的长度 [1, 2, 3] + [4, 5, 6] [1, 2, 3, 4, 5, 6] 组合 [‘Hi~’] * 4 [‘Hi~’, ‘Hi~’, ‘Hi~’, ‘Hi~’] 重复 3 in [1, 2, 3] True 元素是否存在于list中 for x in [1, 2, 3]: print(x, end=” “) 1 2 3 遍历list中的元素
‘+’相当于list追加组合,’*’ 相当于重复list
2.tuple(元组)
tuple基本是list类似,但是tuple最大的不同是tuple是不可修改的,不能增减元素,不能修改其中的元素
- 创建
tuple1 = ("str1", "str2", "str3")
tuple2 = ("name", "ID", 1024, 1080)
tuple3 = (1, 2, 3, 4, 5)
tuple_null = () #创建空的tuple
tuple_one_ele = (1,) #单元数tuple,注意需要加逗号,不同于list
- 增减元素
不可增减元素。但是可以连接组合多个tuple,并且只能删除整个tuple
>>> t1 = (1, 2, 3)
>>> t2 =('a', 'b', 'c')
>>> t3 = t1 + t2
>>> t3
(1, 2, 3, 'a', 'b', 'c')
>>> del t3
- tuple运算操作
tuple的基本操作和list一样,可以组合’+’,’*’等
3.dictionary
字典包含key 和 value,并且内容可变。其格式如下:
格式:d = {key1 : value1, key2 : value2 }
例子:d = {1:"a", 2:"b", 3:"c"}
字典的特点:
1.key值必须是唯一的,但是value不必,可以重复。
2.key可以是任何数据格式,如数字,字符串,tuple,但是不能为list, 要保证key不可变,但是value可以是任何类型包括list。
- 元素访问
通过key值来获取元素value:
>>> d = {"id": 2, "name":"Tom", "age": 18}
>>> d["name"]
'Tom'
通过dict提供的get方法,如果key不存在,可以返回None,或者自己指定的value:
>>> d.get('sex')
>>> d.get('sex', -1)
-1
- 修改元素value
通过key获取value来修改:
>>> d["age"] = 20
>>> d
{'id': 2, 'name': 'Tom', 'age': 20}
- 增减元素
字典增加元素很简单,直接设置新的key值的value:
>>> d["new_key"] = 10
>>> d
{'id': 2, 'name': 'Tom', 'age': 20, 'new_key': 10}
删除字典的key和整个字典:
del dict['Name'] # 删除键 'Name'
dict.clear() # 删除字典
del dict # 删除字典
- dict和list的比较
dict的查找和插入的速度极快,不会随着key的增加而变慢。但是需要占用大量的内存,内存浪费多。相反,list查找和插入的时间随着元素的增加而增加。但是占用空间小,浪费内存很少。
4.set
set是一个无序不重复元素集,可添加,删除数据,还可以计算交集、差集、并集等。set不能添加list, dictionary这种可变的元素,其余包括tuple都可以添加。
- 创建
class set([iterable])
参数说明: iterable -- 可迭代对象对象;
>>> s = set([1, 2, 3])
>>> s
{1, 2, 3}
- 增减元素
>>> s.add(4) #注意如果是已经存在的数据,则不会继续添加
>>> s
{1, 2, 3, 4}
>>> s.remove(2)
>>> s
{1, 3, 4}
- 交集、差集、并集操作
>>> s1 = set([1, 2, 3])
>>> s2 = set([2, 3, 4])
>>> s1 & s2 # 交集
{2, 3}
>>> s1 | s2 # 并集
{1, 2, 3, 4}
>>> s1 - s2 # 差集
{1}
参考来自:
http://blog.csdn.net/sinat_14849739/article/details/78267782
http://www.runoob.com/python3/python3-dictionary.html