Python | 数据类型之集合 | 函数

简介: Python | 数据类型之集合 | 函数

4610074d7c47490282d313e3764ab160.jpg


一、集合简介


1.1 集合的定义


集合(set)是一个无序的不重复元素序列。

可以使用大括号 { } 或者 set() 函数创建集合,注意:创建一个空集合必须用 set() 而

不是 { },因为 { } 是用来创建一个空字典。

dict1 = {}  # 创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典
print(type(dict1))  # dict
set1 = set()
print(type(set1))  # set


1bdd9384ebc84937a71b6d1b7154c9a2.png

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)

fff6a27761144a4d9bacbeaae8855a33.png


二、集合的基本操作

2ffdcd48fcf54ad190b4e860feefeda8.png


298f10116b9e47e3a2661a53fa71d26e.png

# 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)

986510b7ec3446639fc09a0410874d7f.png


9b2e62501ea349d2922c2d996e370778.png


三、函数


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)))


be992bd817164c4f92e99e1ad8911f9f.png


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


e256a71228e54ccf9463867f7eb4dc03.png

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)


345885e4b215450f8b42fcc3df8d2c9d.png

这篇文章主要介绍了Python中的集合(set)数据类型,以及函数的定义和调用!今

日份的分享就到这里,我们下期再见,拜拜!

5d57518ccb18444eb309d816eedcd870.gif


相关文章
|
2天前
|
Python
【Python操作基础】——集合
【Python操作基础】——集合
|
2天前
|
Python
【Python操作基础】——数据类型
【Python操作基础】——数据类型
|
1天前
|
测试技术 开发者 Python
Python检查函数和方法的输入/输出
【5月更文挑战第5天】Python检查函数和方法的输入/输出
9 1
|
1天前
|
Python
在Python中,利用`os模块`的`path.exists()`函数可判断文件是否存
在Python中,利用`os模块`的`path.exists()`函数可判断文件是否存在,该函数对路径进行检查,存在则返回True,不存在则返回False。示例代码展示了如何检查&#39;example.txt&#39;文件是否存在并相应打印消息。此外,`os.path.isfile()`用于确认路径是否为文件,仅当是文件时返回True,否则返回False,同样配以示例说明其用法。
8 2
|
2天前
|
Python
【Python操作基础】——函数
【Python操作基础】——函数
|
2天前
|
Python
Python的全局变量作用于整个程序,生命周期与程序相同,而局部变量仅限函数内部使用,随函数执行结束而销毁。
Python的全局变量作用于整个程序,生命周期与程序相同,而局部变量仅限函数内部使用,随函数执行结束而销毁。在函数内部修改全局变量需用`global`关键字声明,否则会创建新局部变量。
9 2
|
3天前
|
存储 Python
python字符串和字节明确数据类型
【5月更文挑战第6天】python字符串和字节明确数据类型
8 2
|
5天前
|
存储 程序员 Python
Python 数据类型转换详解
Python 数据类型转换详解
12 0
|
6天前
|
Java C# 开发者
Python 中的类型注解是一种用于描述变量、函数参数和返回值预期类型的机制
Python的类型注解提升代码可读性和可维护性,虽非强制,但利于静态类型检查(如Mypy)。包括:变量注解、函数参数和返回值注解,使用内置或`typing`模块的复杂类型,自定义类型注解,以及泛型模拟。类型注解可在变量声明、函数定义和注释中使用,帮助避免类型错误,提高开发效率。
16 6
|
7天前
|
存储 Python
【Python 基础】解释reduce函数的工作原理
【5月更文挑战第6天】【Python 基础】解释reduce函数的工作原理