变量和集合

#变量
name=565464654654564564664545
c=2.0
d=2.0
#数字
#字符串
#列表
#元组
#字典

#可变不可变
#1.可变:列表,字典
#2.不可变:字符串,数字,元组
v=id(c)
m=id(d)
print(v,m) #数据变化后,id不会发生改变的就是可变的
#访问顺序:
#1.直接访问:数字
#2.顺序访问:字符,列表,元组
#3.映射:字典

#存放元素个数:
# 容器类型:列表,元组,字典
# 原子:数字,字符串

#set集合
# 1.不同元素组成
# 2.无序
# 3.集合中元素必须是不可变类型

# 1.创建集合
# s = set("hello")
# print(s)#{'h', 'o', 'e', 'l'}
# s1=[12,56,"siisnx",65]
# s2=set(s1)
# print(s2)#{56, 65, 12, 'siisnx'}
# for i in s2:
# print(i)

# #==============================集合函数方法=============
# #1.添加一个元素到集合中
# s = {56,56,"a","小明",23,89}
# s.add("爱好")
# print(s)#{'小明', 'a', 23, 56, 89, '爱好'}

# #2.清空集合数据
# s = {56,56,"a","小明",23,89}
# s.clear()
# print(s)#set()

# #3.拷贝整个集合并赋值给变量
# s = {56,56,"a","小明",23,89}
# x = s.copy()
# print(x)#{'小明', 23, 56, 89, 'a'}

# #4.随机删除集合中一个元素,可以通过变量获取删除元素
# s = {'小明', 23, 56, 89, 'a'}
# ys = s.pop()
# print(ys)#小明

# #5.删除集合中的指定的元素,如果集合中没有的话回报错
# s = {'小明', 23, 56, 89, 'a'}
# s.remove(23)
# # s.remove(45)#报错
# print(s)#{'a', '小明', 56, 89}

# #6.删除集合中的指定的元素,如果集合中没有的话回报错
# s = {'小明', 23, 56, 89, 'a'}
# s.discard(45)#不会报错
# s.discard(23)
# print(s)#{89, 'a', 56, '小明'}
# """pop() 、remove() 、 discard() 三个集合删除函数比较:
# pop() 随机删除集合中一个元素remove() 删除集合中指定的元素,如果集合中没有指定的元素,程序报错!
# discard() 删除集合中指定的元素,如果集合中没有指定的元素,程序正常运行
# """

# #intersection & :交集; union | :并集合; difference - : 差集
# s1 = {"a","b","x",6}
# s2 = {"a","b","y",9}
# #1.交集
# v = s1.intersection(s2)
# v1 = s1&s2
# print(v,v1)#{'a', 'b'} {'a', 'b'}

# #2.并集
# v1 = s1.union(s2)
# v2 = s1|s2
# print(v1,v2)#{'a', 6, 'b', 9, 'y', 'x'} {'a', 6, 'b', 9, 'y', 'x'}

# #3.差集
# v1 = s1.difference(s2)
# v2 = s1-s2
# print(v1,v2)#{'x', 6} {'x', 6}

# #4.求交叉补集,symmetric_difference() 和 ^ 符号效果一样
# print(s1.symmetric_difference(s2))#{'y', 6, 9, 'x'}
# print(s1^s2)#{'y', 6, 9, 'x'}

# #5.求差集并赋值给原集合
# # s1.difference_update(s2)
# # print(s1)#{6, 'x'}

# #6.求交集并赋值给原集合
# s1 = {"a","b","x",6}
# s2 = {"a","b","y",9}
# s1.intersection_update(s2)
# print(s1)#{'b', 'a'}

# #7.update()更新集合,参数为可迭代对象
# s1 = {"a","b","x",6}
# s1.update([12,56])
# print(s1)#{'a', 6, 12, 'b', 56, 'x'}
# """add() 和 update() 比较:
# add(): 只能添加一个元素到集合
# update(): 可以添加多个元素到集合,参数为 iterable"""
#
# #8.symmetric_difference_update()求交叉补集并赋值给源集合
# s1 = {"a","b","x",6}
# s2 = {"a","b","y",9}
# s1.symmetric_difference_update(s2)
# print(s1)#{6, 9, 'y', 'x'}
#
# #9.定义不可变得集合
# s=frozenset("hello")
# print(s)
# #使用 frozenset 定义的集合,没有 add 或者 pop 等方法

#判断两个集合是否完全不同
s1={1,2}
s2={4,3,5}
print(s1.isdisjoint(s2))
#判断两个集合是否完全不同
s1={1,2}
s2={1,2,5}
print(s1.issubset(s2))#s1是s2的子集
print(s2.issuperset(s1))#s1是s2的父集
原文地址:https://www.cnblogs.com/liuwenwen/p/12858451.html