python---集合和函数

一、集合

1.集合的特征

集合是无序的,集合中的元素是唯一的,集合一般用于元组或者列表中的元组去重

2.元素添加

2.1:add

nums = {11,24,45,96,28}
nums.add(42)
print(nums)

返回的结果:

#{96, 42, 11, 45, 24, 28}

2.2:update
案例:

nums = {11,24,45,96,28}
nums2=["jack","tom"]
nums.update(nums2)
print(nums)

返回的结果:

#{96, 'jack', 11, 45, 24, 28, 'tom'}

3.删除元素
remove,pop,discard

3.1:remove
使用remove删除集合中的元素 如果有直接删除 如果没有程序报错

案例:该元素存在

nums = {11,24,45,96,28}
nums.remove(24)
print(nums)

返回的结果:

#{96, 11, 45, 28}

案例:该元素不存在

nums = {11,24,45,96,28}
nums.remove(245)
print(nums)

返回的结果:

#KeyError: 245

3.2:pop
使用pop删除是随机删除集合中的元素 如果集合没有元素程序报错
案例:有元素

nums = {11,24,45,96,28}
nums.pop()
print(nums)

返回结果:

#{11, 45, 24, 28}

案例:无元素

nums = {}
nums.pop()
print(nums)

结果:

#TypeError: pop expected at least 1 arguments, got 0

3.3:discard
使用discard删除 如果元素存在直接删除 如果元素不存在不做任何操作
案例:该元素存在

nums = {11,24,45,96,28}
nums.discard(24)
print(nums)

返回结果:

#{96, 11, 45, 28}

案例:该元素不存在

nums = {11,24,45,96,28}
nums.discard(242)
print(nums)

返回结果:

#{96, 11, 45, 24, 28}

4.集合的交集和并集
4.1:交集
使用&连接多个集合,得到相同的元素
案例:存在相同元素

set1 = {"jack","tom","haha"}
set2 = {"jack","susala"}
set3= set1 & set2
print(set3)

返回结果:

{"jack"}

案例:存在相同的元素

set1 = {"jack","tom","haha"}
set2 = {"jack2","susala"}
set3= set1 & set2
print(set3)

返回值:set()
4.2:并集
使用|连接多个集合,得到全部集合中全部的元素
案例:

set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}
new_set = set1 | set2
print(new_set)

返回值:

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

二、函数
1.1:什么是函数
在开发程序时,需要某块代码多次,但是为了提高编写的效率以及代码的重用,所以把具有独立功能的代码块
组织为一个小模块,这就是函数
1.2:函数定义和调用
格式

def 函数名():
 执行语句
函数名()  #调用函数

案例:

def hello():
  print("hello word")
hello()

注意:
定义了函数之后,就相当于有了一个具有某些功能的代码,想要让这些代码能够执行,需要调用它
调用函数很简单的,通过 函数名() 即可完成调用
每次调用函数时,函数都会从头开始执行,当这个函数中的代码执行完毕后,意味着调用结束了
当然了如果函数中执行到了return也会结束函数
1.3:函数参数
案例:

def add2num():
   a = 11
   b = 22
   c = a+b
   print c

2.1:位置参数
格式
def 函数名(参数1,参数2):
代码块
函数名(值1,值2)
案例:

def fun(a,b):
  print("a:",a)
  print("b:",b)
fun(2,3)

结果:a: 2 b:3
2.2:关键字参数
格式

def 函数名(参数1,参数2):
 代码块
函数名(参数1=1,参数2=2

案例:

def fun(a,b):
 print("a:",a)
 print("b:",b)
fun(a=2,b=3)

结果:a: 2 b:3
注意:参数调用时,可以改变传参顺序,如果有位置参数需要位置参数放在关键字参数前面
案例:

def fun(a,b):
  print("a:",a)
  print("b:",b)
fun(3,b=2)

结果:a: 3 b:2
如果关键字参数传参要在位置参数之前,将会报错
案例:错误

def fun(a,b):
  print("a:",a)
  print("b:",b)
fun(a = 3,2)
#SyntaxError: positional argument follows keyword argument

三、变量
定义:
在函数外边定义的变量叫做全局变量
约束:
全局变量能够在所有的函数中进行访问

代码

a = 100
def test1():
  print(a)  # 虽然没有定义变量a但是依然可以获取其数据
def test2():
  print(a)  # 虽然没有定义变量a但是依然可以获取其数据
# 调用函数
test1()
test2()

返回值:100 100
1.1:全局变量和局部变量名字相同
代码:

a = 100  #全局变量
def test1():
  a= 300
  print("修改后的a:",a)
def test2():
  print(a)
# 调用函数
test1()
test2()

返回值:修改后的a:300 100
注意:函数中的变量修改不会导致全局变量改变
1.2:全局变量的修改
代码:global的使用

a = 100  #全局变量
def test1():
  global a  #将a变成全局变量
  a= 300
  print("修改后的a",a)
def test2():
  print(a)
# 调用函数
test1()
test2()

注意:在函数中出现global 全局变量的名字 那么这个函数中即使出现和全局变量名相同的变量名 = 数据
也理解为对全局变量进行修改,而不是定义局部变量

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

清 醒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值