一、集合简介
1.1 集合的定义
集合(set)是一个无序的不重复元素序列。
可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而
不是 { },因为 { } 是用来创建一个空字典。
dict1 = {} # 创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典 print(type(dict1)) # dict set1 = set() print(type(set1)) # set
1.2 实例
set2 = {"a", "b", "c", "b", "e"} print(set2) # 去重功能 print("a" in set2) # 判断元素是否在集合内 a = set('abrcd') b = set('alczm') # a-b 集合a中包含而集合b中不包含的元素 <=>a-a&b print(a - b) # a|b 集合a或b中包含的所有元素 print(a | b) # a&b 集合a和b中都包含了的元素 print(a & b) # a^b 不同时包含于a和b的元素 <=> a-b | b-a print(a ^ b) print(a - b | b - a)
二、集合的基本操作
# 1.difference() a-b 不改变原集合 set1 = {"a","b","c"} set2 = {"c","d","e"} print(set1.difference(set2)) # 2.difference_update() 改变原集合 # difference() 方法返回一个移除相同元素的新集合,而 difference_update() 方法是直接在原来的集合中移除元素 set1.difference_update(set2) print(set1) # 3.intersection() set3 = {1,2,3} set4 = {3,4,5} print(set3.intersection(set4)) # 4.intersection_update() # intersection() 方法是返回一个新的集合,而 intersection_update() 方法是在原始的集合上移除不重叠的元素 set3.intersection_update(set4) print(set3)
三、函数
3.1 函数的定义
函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。
函数能提高应用的模块性,和代码的重复利用率。
Python 定义函数使用 def 关键字,一般格式如下:
def 函数名(参数列表): 函数体 return
Python中的函数与其他语言中的函数用法基本相同,这里不过多介绍。
需要注意的是,Python中的函数可以有多个返回值,请看下面的例题:
# 有多个返回值的函数 def getDate(): year = 2023 mouth = 2 return year, mouth # 接收函数值也要使用两个变量 year, mouth = getDate() print("year is %d,mouth is %d" % (year, mouth)) # 如果使用1个变量接收,接收到的就是元组 year = getDate() print("year is %s and type is %s" % (str(year), type(year)))
3.2 函数的调用
函数可以直接调用,也可以嵌套调用。
def line(): print("-" * 40) line() # 直接调用 def defineLine(): number = int(input("Please input a number for times:\n")) i = 0 while i < number: line() # 嵌套调用 i += 1
3.3 全局变量和局部变量
全局变量 | 局部变量 | |
定义 | 定义在函数外的变量 | 定义在函数内的变量 |
作用范围 | 整个Python文件有效 | 函数内有效 |
冲突 | 当全局变量和局部变量重名时,使用的是局部变量 | 如果要使用全局变量,要使用global关键字声明 |
请看下面的例题:
a = 100 def getNum(): a = 200 # 当全局变量和局部变量重名时,使用的是局部变量 print("a=%d"%a) def getNum2(): global a a = 500 # 如果要使用全局变量,要使用global关键字声明 print("a=%d"%a) getNum() getNum2() print(a)
这篇文章主要介绍了Python中的集合(set)数据类型,以及函数的定义和调用!今
日份的分享就到这里,我们下期再见,拜拜!