肖小鱼儿不爱洗澡

如果有来生, 要做一棵树, 站成永恒, 没有悲欢的姿势。 一半在土里安详, 一半在风里飞扬, 一半洒落阴凉, 一半沐浴阳光, 非常沉默非常骄傲, 从不依靠 从不寻找。 《说给自己听》

导航

数据类型比较总结

1. 有序的,有索引,可切片的:

  有序的,有索引,可切片的:str,list,tuple

 无序的,无索引,不可切片的:dict ,set ,但是可以dict['key']=values

2.是否可迭代的:

hasattr( —iter—)有此方法的,list,tulpe,dict,set 有,int,str没有

但是有的说str是可迭代的,我也觉得是,因为list的extend()方法,参数应该是可迭代的,但是str做参数时也可以,说明str是可迭代的?

总结:可迭代的:str,list,tuple,dict,set

3.是否可以原地修改,可变的:

 注意原地两字

 1   >>> a='  asdf '
 2   >>> a.strip()
 3   'asdf'
 4   >>> a
 5  '  asdf ' #字符串没有变,所以str不能原地修改
 6   >>> 
 7   >>> 
 8   >>> a=[1,2,3,4]
 9   >>> a.append(5)
10  >>> a
11  [1, 2, 3, 4, 5] #列表可原地修改
12  >>> 
13 >>> 
14  >>> a={1:1, 2:2, 3:[6,7,8]}
15  >>> a[3].append(9)16  
17  >>> a
18  {1: 1, 2: 2, 3:[6,7,8,9]} #字典可以原地修改
19  >>> 特别说明,dict的键必须是不可修改的,dict的值可原处修改,而且字典的键应该是不可变的,也就是键不可是list,dict和部分set,可以是int,str,tuple,部分set

总结:不可原地修改,不可变的是:int,str,tuple,

           可原地修改的,可变的是:list,dict,

注意:set特殊,有的可以原地修改可变,有的不可以

http://www.lai18.com/content/384857.html 老齐的set讲解

http://www.lai18.com/content/384856.html

posted on 2017-02-18 19:39  郑好你好  阅读(225)  评论(0编辑  收藏  举报