1101

字典-其他


infos1={'sid':376,

'sname':'任盈盈',

'age':21,

'hobby':['lol','令狐冲','烫头发']

}

infos2=infos1.copy()    #复制字典,地址不同,其他相同

print(infos2)

print(id(infos1)is id(infos2)) #is 判断地址是否相等

print(infos1==infos2)    #== 判断值是否相等

'**************是不是分割线***************'

ls=['A','B','C']

infos=dict.fromkeys(ls,'smd')#创建新的字典,以原列表中的元素作为键,并赋值'smd'

print(infos)

'**************是不是分割线***************'

infos1={'sid':376,

'sname':'任盈盈',

'age':21,

'hobby':['lol','令狐冲','烫头发']

}

print(infos1.setdefault('age',17))

print(infos1)  #如果键在字典中,返回这个键所对应的值

print(infos1.setdefault('sex','女'))

print(infos1) #如果键不在字典中,将会添加键并将值设为default

'**************是不是分割线***************'

infos1={'sid':376,

'sname':'任盈盈',

}

infos2={'sid':123,

'sname':'任盈盈',

}

infos1.update(infos2) #把字典2中的键值对更新到字典1

print(infos1)

字典与列表对比

和list比较,dict有以下几个特点:1 查找速度极快,不会随着key的增加而变慢;

2 需要占用大量的内存,内存浪费多。

而list:1 查找和插入的时间随着元素的增加而增加;2 占用空间小,浪费内存很少。

因此,dict是用空间来换取时间的一种方法。

关于 set

#  Set 是无序的,存储的值不能重复

# list是连续的,有顺序,存储的值可以重复

mySet=set([1,2,3])

print(mySet)

#二者相同

mySet={1,2,3}

print(mySet)

mySet={1,2,3,111,4,6,1,3}

print(mySet)

'*************割割割割割割***************'

mySet= set()

print(mySet)

'**************割**************************'

mySet={1,2,3}

mySet.add(4)  #新增

print(mySet)

mySet={1,2,3}

mySet.remove(3)

print(mySet)  #删除一个

'***************割****************'

mySet1={1,2,3}

mySet2={3,4,5}

print(mySet1 | mySet2) #并集

print(mySet1.union(mySet2))

print(mySet1 & mySet2) #交集

print(mySet1.intersection(mySet2))

print(mySet1 - mySet2) #差集

print(mySet1.difference(mySet2))

'***************割****************'

set1={1,2,3}

set1.update('4')  #将集合x并入原集合s中,x还可以是列表,元组,字典等,x 可以有多个,用逗号分开

print(set1)

set1={1,2,3}

set1.discard(2) #移除

print(set1)

'***************割****************'

set1={1,2,3}

set2=set1.pop()  #随机删除,并返回

print(set1)

print(set2)

'***************割****************'

set1={1,2,3}

print(2 in set1) #判断是否存在

set1.clear()

print(set1)

'***************割****************'

set1={1,2,3,4,5}

set2={4,5}            #判断是否为子集

print(set2.issubset(set1))

print(set1.issuperset(set2))

多维

python的集合可以存放任意类型,可以嵌套很多层次

ls=[1,2,(4,5,6),7,8,[9,0,('a','b','c')]]

print(ls[5][2][1])

                                                              2017-11-1

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 列表-切片 切片的目的就是获取列表中的一部分,得到一个新的列表,不改变原来。 ''' ls=[i**2 for i...
    不再少少年阅读 562评论 0 0
  • 1. 切片: ''' 列表生成式 ''' myList = [i*10 for i in range(0,11...
    __X呦阅读 474评论 0 2
  • #字典的其他方法 info1={ 'sname':'陈狗粮', 'age':38, 'hobby':['吃鸡','...
    FDDDDDDD_阅读 205评论 0 0
  • 1.dict.copy() 返回一个新的字典,内容一样,地址不同 #内容一样,地址不同 infos2 = info...
    步_尘阅读 747评论 0 0
  • 序列(如列表和元组)、映射(如字典)以及集合(set)是三类主要的数据结构(也称为容器)。 序列(列表、元组和字符...
    又见倾心阅读 338评论 0 0

友情链接更多精彩内容