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


相关文章
|
8天前
|
设计模式 缓存 监控
Python装饰器:优雅增强函数功能
Python装饰器:优雅增强函数功能
196 101
|
15天前
|
缓存 测试技术 Python
Python装饰器:优雅地增强函数功能
Python装饰器:优雅地增强函数功能
163 99
|
15天前
|
存储 缓存 测试技术
Python装饰器:优雅地增强函数功能
Python装饰器:优雅地增强函数功能
143 98
|
19天前
|
缓存 Python
Python中的装饰器:优雅地增强函数功能
Python中的装饰器:优雅地增强函数功能
|
18天前
|
机器学习/深度学习 数据采集 并行计算
多步预测系列 | LSTM、CNN、Transformer、TCN、串行、并行模型集合研究(Python代码实现)
多步预测系列 | LSTM、CNN、Transformer、TCN、串行、并行模型集合研究(Python代码实现)
188 2
|
2月前
|
Python
Python 函数定义
Python 函数定义
117 1
|
27天前
|
算法 安全 数据安全/隐私保护
Python随机数函数全解析:5个核心工具的实战指南
Python的random模块不仅包含基础的随机数生成函数,还提供了如randint()、choice()、shuffle()和sample()等实用工具,适用于游戏开发、密码学、统计模拟等多个领域。本文深入解析这些函数的用法、底层原理及最佳实践,帮助开发者高效利用随机数,提升代码质量与安全性。
134 0
|
2月前
|
数据挖掘 数据处理 C++
Python Lambda:从入门到实战的轻量级函数指南
本文通过10个典型场景,详解Python中Lambda匿名函数的用法。Lambda适用于数据处理、排序、条件筛选、事件绑定等简洁逻辑,能提升代码简洁性和开发效率。同时提醒避免在复杂逻辑中过度使用。掌握Lambda,助你写出更高效的Python代码。
123 0
|
3月前
|
机器学习/深度学习 数据处理 索引
Python内置函数:面试通关的49个秘密武器
本文精选49个Python高频面试内置函数,涵盖数值处理、类型转换、序列操作、字典集合、函数式编程及高级特性,结合真实代码案例解析底层逻辑与应用场景,助你提升开发效率,轻松应对技术面试。
64 1
|
2月前
|
数据采集 索引 Python
Python Slice函数使用教程 - 详解与示例 | Python切片操作指南
Python中的`slice()`函数用于创建切片对象,以便对序列(如列表、字符串、元组)进行高效切片操作。它支持指定起始索引、结束索引和步长,提升代码可读性和灵活性。

热门文章

最新文章

推荐镜像

更多