学习PYTHON之路, DAY 3

时间:2022-12-31 12:53:15

一 set 集合 (无序且不重复的元素集合

基本操作: t.add('x') # 添加一项 s.update([10,37,42]) # 在s中添加多项 删除一项: t.discard(‘H’) t.remove('H')
区别:如果删除在集合中没有,discard 不会报错, remove 报错

t.pop() # 不加参数
随机删除,并返回删除的值

len(s)
set 的长度
x in s
测试 x 是否是 s 的成员
x not in s
测试 x 是否不是 s 的成员
s.issubset(t)
s <= t
测试是否 s 中的每一个元素都在 t 中
s.issuperset(t)
s >= t
测试是否 t 中的每一个元素都在 s 中
s.union(t)
s | t
返回一个新的 set 包含 s 和 t 中的每一个元素
s.intersection(t)
s & t
返回一个新的 set 包含 s 和 t 中的公共元素
s.difference(t)
s - t
返回一个新的 set 包含 s 中有但是 t 中没有的元素
s.symmetric_difference(t)
s ^ t
返回一个新的 set 包含 s 和 t 中不重复的元素
s.copy()
返回 set “s”的一个浅复制

二 三元运算 (if else的简写)

1 result = 30 if a>10 else 50
2
3 #当a》10,result =30,否则 a =50
 

三 lambda表达式(可以接两个参数,只能用一行)

1 f1 = lambda a, b : a + b + 100

 

四 函数

I 返回值

如果return没有指定返回值,是none.

1 def f1():
2 print(123)
3 return '111'
4 #在函数,一旦执行return,函数执行过程立即终止,下面的print不会再执行
5 print(456)

II 参数

1 普通参数(严格按照顺序,将实际参数赋值给形式参数)

2 默认参数(必须放置在参数列表的最后)

3 指定参数(将实际参数赋值给制定的形式参数)

4 动态参数:

(1)* 默认将传入的参数,全部放置在元祖中

1 def f1(*args):
2 print(args)
3
4 li = [11, 'lala']
5 f1(li)
6 f1(*li)

第一个结果是([11, 'lala']), 把列表当作一个元素

第二个结果是(11, ‘lala’), 把列表里的所有元素分别放入元祖里

 

(2)** 默认将传入的参数,全部放置在字典中

1 def f1(**kwargs):
2 print(kwargs)
3 f1(n1 = 'nikita')

结果是{‘n1’:'nikita'}

5 万能参数

def f1(*args, **kwargs)

III 其他

1 局部变量和全局变量

只有在函数里面用的是局部变量,所有作用域都可用的是全局变量(注意用大写),在函数里面用global,可以将局部变全局变量。

NAME = 'lulu'  
def f1():
age
= 10
#把name的全局变量改成nikita,以下函数的name都为nikita
global NAME
NAME
= 'nikita'
print (age, NAME)

如果全局变量是列表,字典,只能修改,不能重新赋值。即是不能用global。

 

 

 

 

 

 

 







基本操作:  

  

t.add('x')            # 添加一项  

  

s.update([10,37,42])  # s中添加多项  

  

   

删除一项:  

t.discard(H)

  

t.remove('H')  

区别:如果删除在集合中没有,discard 不会报错, remove 报错  

t.pop() # 不加参数

随机删除,并返回删除的值

  

len(s)  

set 的长度  

  

x in s  

测试 x 是否是 s 的成员  

  

x not in s  

测试 x 是否不是 s 的成员  

  

s.issubset(t)  

s <= t  

测试是否 s 中的每一个元素都在 t 中  

  

s.issuperset(t)  

s >= t  

测试是否 t 中的每一个元素都在 s 中  

  

s.union(t)  

s | t  

返回一个新的 set 包含 s t 中的每一个元素  

  

s.intersection(t)  

s & t  

返回一个新的 set 包含 s t 中的公共元素  

  

s.difference(t)  

s - t  

返回一个新的 set 包含 s 中有但是 t 中没有的元素  

  

s.symmetric_difference(t)  

s ^ t  

返回一个新的 set 包含 s t 中不重复的元素  

  

s.copy()  

返回 set s”的一个浅复制