码迷,mamicode.com
首页 > 其他好文 > 详细

D14 集合set

时间:2018-07-14 10:24:55      阅读:163      评论:0      收藏:0      [点我收藏+]

标签:style   type   mysql   ret   text   super   关键字   sqlite   return   

 

把 字符串  元祖 变成集合的方法   因为列表是可变的所以不能变为集合

 # s=set(‘hello‘)
# print(s)
#
# s=set([‘alex‘,‘alex‘,‘sb‘])
# print(s)

# s={1,2,3,4,5,6}

#添加
# s.add(‘s‘)
# s.add(‘3‘)
# s.add(3)
# print(s)

# s.clear()
# print(s)

# s1=s.copy()

s={‘sb‘,1,2,3,4,5,6}
#随机删
# s.pop()

#指定删除
# s.remove(‘sb‘)
# s.remove(‘hellol‘) #删除元素不存在会报错
# s.discard(‘sbbbb‘)#删除元素不存在不会报错
# print(s)


# python_l=[‘lcg‘,‘szw‘,‘zjw‘,‘lcg‘]
# linux_l=[‘lcg‘,‘szw‘,‘sb‘]
# p_s=set(python_l)
# l_s=set(linux_l)
# #求交集
# print(p_s,l_s)
# print(p_s.intersection(l_s))
# print(p_s&l_s)
# #求并集
# print(p_s.union(l_s))
# print(p_s|l_s)
# #差集
# print(‘差集‘,p_s-l_s)
# print(p_s.difference(l_s))
# print(‘差集‘,l_s-p_s)
# print(l_s.difference(p_s))

 

 

#交叉补集
# print(‘交叉补集‘,p_s.symmetric_difference(l_s))
# print(‘交叉补集‘,p_s^l_s)

python_l=[‘lcg‘,‘szw‘,‘zjw‘,‘lcg‘]
linux_l=[‘lcg‘,‘szw‘,‘sb‘]
p_s=set(python_l)
l_s=set(linux_l)
print(p_s,l_s)
# print(‘差集‘,p_s-l_s)
# p_s=p_s-l_s
p_s.difference_update(l_s)
print(p_s)

# s1={1,2}
# s2={2,3,5}
# print(s1.isdisjoint(s2))

s1={1,2}
s2={1,2,3}
print(s1.issubset(s2))#s1 是s2 的子集
print(s2.issubset(s1))#False

print(s2.issuperset(s1))#s1 是s2 的父集

s1={1,2}
s2={1,2,3}
# s1.update(s2) #更新多个值

# s1.add(1,2,3,4) #更新一个值
# s1.union(s2) #不更新

print(s1)

 函数def

def  函数的格式

test  函数的名称

def text(x, y, z):
    y = x * 2 + 1
    z = 8 + y
    x = z + 9
    print(x,y,z)
    return (x,y,z)


text(4,3,2)


text(y=10,x = 3,z=2)

a = text(2,4,5)
print(a)

函数由于 自变量不同而导致因变量不同的正确姿势

 

 

#位置参数,必须一一对应,缺一不行多一也不行
# test(1,2,3)

#关键字参数,无须一一对应,缺一不行多一也不行
# test(y=1,x=3,z=4)

#位置参数必须在关键字参数左边
# test(1,y=2,3)#报错
# test(1,3,y=2)#报错
# test(1,3,z=2)
# test(1,3,z=2,y=4)#报错
# test(z=2,1,3)#报错

 

 

def handle(x, type=mysql):
    print(x)
    print(type)
#上面是函数的过程  也叫做形参
#下面的会占内存空间  也叫实参
handle(
hello)#这个是给函数提供自变量 handle(hello, type=sqlite) # 此时更改了函数

函数的参数组

参数组:**字典 *列表

1   *列表

def test(x,*args):
    print(x)
    print(args)


test(1)
test(1,2,3,4,5)
test(1,{name:alex})
test(1,[x,y,z])
test(1,*[x,y,z])   #前面加了*
test(1,*(x,y,z))   #前面加了*

输出的结果

1
()
1
(2, 3, 4, 5)
1
({‘name‘: ‘alex‘},)
1
([‘x‘, ‘y‘, ‘z‘],)
1
(‘x‘, ‘y‘, ‘z‘)
1
(‘x‘, ‘y‘, ‘z‘)

 

 

 

 

2字典

def test(x, **kwargs):
    print(x)
    print(kwargs)


test(1, y=2, z=3)  # test(1,1,2,2,2,2,2,y=2,z=3)
#test(1, y=2, z=3, z=3)  # 会报错 :一个参数不能传两个值

 

D14 集合set

标签:style   type   mysql   ret   text   super   关键字   sqlite   return   

原文地址:https://www.cnblogs.com/fromlantianwei/p/9294870.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!