python数据类型(四)集合-创新互联
python数据类型(四)集合
回顾
- 字符串所调用的功能都会生成一个新的东西
- 列表的独有功能要记住
补充
列表功能:
成都创新互联是一家集成都网站设计、做网站、网站页面设计、网站优化SEO优化为一体的专业网站建设公司,已为成都等多地近百家企业提供网站建设服务。追求良好的浏览体验,以探求精品塑造与理念升华,设计最适合用户的网站页面。 合作只是第一步,服务才是根本,我们始终坚持讲诚信,负责任的原则,为您进行细心、贴心、认真的服务,与众多客户在蓬勃发展的市场环境中,互促共生。- .reverse 反转
info = ["1","2","3"] info.reverse() print(info) 输出结果,3 2 1
- .sort() 排序
info = ["1","2","3"] info.sort(reverse=False) print(info) 输出结果,1.2.3
字典
none是python里面的空
- .get[“k1”] 取值判断是否存在,存在输出,不存在返回none
info = {"1":"2","3":"4"} print(info.get("k12211")) 输出none print(info.get("k111111"),666) 输出none 666
- .pop 删除
info = {"1":"2","3":"4"} resu = info.pop("1") print(resu) print(info)
.update() 不存在就添加,存在就覆盖
- 判断字符,是否在列表里面用in,元组也可以,字典中默认是按照键是否存在,判断值需要循环判断(用.values),也可以强制转换成列表
实际操作题 要求,判断用户输入字符串中是否有列表中的元素,如果有输出对不起 方式一: info = ["1","2","3",] c = input("请输入:") for i in info: if i in c : print("对不起") break 方式二: info = ["1","2","3",] c = input("请输入:") s = True for i in info: if i in c : s = False break if s == True: print("成功") else: print("对不起")
一,集合
集合是无序的不可重复的列表
v = {1,2,3,34,45,} 集合的格式 #v = {} 是空字典 #v = set() 是空集合
1.独有功能
.add 添加
v = {1,2,3,4,5,} v.add(6) print(v)
.discard() 删除
v = {1,2,3,4,5,} v.discard(2) print(v)
.pop() 随机删除一个
v = {1,2,3,4,5,} v.pop print(v)
.update() 批量添加
v = {1,2,3,4,5,} v.update(11,22,33,) print(v)
v = {1,2,3,4,5,} d = v.intersection({2,3,4,}) 交集 print(d)
v = {1,2,3,4,5,} d = v.union({2,3,4,}) 并集 print(d)
v = {1,2,3,4,5,} d = v.difference({2,3,4,}) 差集 print(d)
2.公用功能
- len
- for循环
3.嵌套
字典,列表,集合,等可变值(可哈希)不可以在集合内,不可以做字典的k
哈希是怎么回事?
- 因为在内部会将值进行哈希算法并得到一个数值(对应内存地址),以后用于快速查找。
二,内存相关
2. 内存相关
示例一
v1 = [11,22,33] v2 = [11,22,33] v1 = 666 v2 = 666 v1 = "asdf" v2 = "asdf" # 按理 v1 和 v2 应该是不同的内存地址。特殊: 1. 整型: -5 ~ 256 2. 字符串:"alex",'asfasd asdf asdf d_asdf ' ----"f_*" * 3 - 重新开辟内存。
示例二:
v1 = [11,22,33,44] v1 = [11,22,33]
示例三:
v1 = [11,22,33] v2 = v1 # 练习1 (内部修改) v1 = [11,22,33] v2 = v1 v1.append(666) print(v2) # 含 666 # 练习2:(赋值) v1 = [11,22,33] v2 = v1 v1 = [1,2,3,4] print(v2) # 练习3:(重新赋值) v1 = 'alex' v2 = v1 v1 = 'oldboy' print(v2)
示例四
v = [1,2,3] values = [11,22,v] # 练习1: """ v.append(9) print(values) # [11,22,[1,2,3,9]] """ # 练习2: """ values[2].append(999) print(v) # [1, 2, 3, 999] """ # 练习3: """ v = 999 print(values) # [11, 22, [1, 2, 3]] """ # 练习4: values[2] = 666 print(v) # [1, 2, 3]
示例五
v1 = [1,2] v2 = [2,3] v3 = [11,22,v1,v2,v1]
更改内存地址不变,重新赋值内存地址变化
查看内存地址
v1 = 234 v2 = "eee" print(id(v1),id(v2))
python数据存储机制:对于数字python认为-5到256,不会重新开辟新的内存地址,常用字符串不会重新开辟,字符串里面包含了非字母数字下划线会重新开辟。
- “==”比较的是值,is比较的是地址
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网站标题:python数据类型(四)集合-创新互联
网站路径:http://myzitong.com/article/dpoisi.html