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


相关文章
|
6天前
|
Python
【python从入门到精通】-- 第五战:函数大总结
【python从入门到精通】-- 第五战:函数大总结
27 0
|
3天前
|
Python
Python之函数详解
【10月更文挑战第12天】
Python之函数详解
|
3天前
|
存储 数据安全/隐私保护 索引
|
10天前
|
Python
【10月更文挑战第7天】「Mac上学Python 13」基础篇7 - 数据类型转换与NoneType详解
本篇将详细介绍Python中的常见数据类型转换方法以及 `NoneType` 的概念。包括如何在整数、浮点数、字符串等不同数据类型之间进行转换,并展示如何使用 `None` 进行初始赋值和处理特殊情况。通过本篇的学习,用户将深入理解如何处理不同类型的数据,并能够在代码中灵活使用 `None` 处理未赋值状态。
46 2
【10月更文挑战第7天】「Mac上学Python 13」基础篇7 - 数据类型转换与NoneType详解
|
5天前
|
索引 Python
Python中的其他内置函数有哪些
【10月更文挑战第12天】Python中的其他内置函数有哪些
7 1
|
5天前
|
开发者 索引 Python
Python中有哪些内置函数
【10月更文挑战第12天】Python中有哪些内置函数
8 0
|
6天前
|
存储 C++ Python
[oeasy]python037_ print函数参数_sep分隔符_separator
本文介绍了Python中`print`函数的`sep`参数,即分隔符。通过回顾上文内容,解释了类型与`type`的概念,并强调了参数类型的重要性。文章详细探讨了`print`函数如何使用`sep`参数来分隔输出值,默认分隔符为空格(序号32)。还讨论了如何修改分隔符为其他字符,如冒号,并解释了为何反斜杠需要使用双反斜杠表示。最后,文章追溯了`sep`名称的由来,以及相关词汇的历史背景,如盎格鲁-萨克逊人的武器和语言。
12 0
|
9天前
|
存储 程序员 Python
Python编程入门:探索变量和数据类型
【10月更文挑战第8天】本文是针对初学者的Python编程入门指南,重点介绍Python中变量的定义和使用以及不同的数据类型。我们将通过实例来理解基本概念,并展示如何在Python程序中应用这些知识。文章旨在帮助初学者建立扎实的基础,使他们能够更自信地编写Python代码。
WK
|
10天前
|
Python
Python函数命名
在Python中,函数命名应清晰、简洁且易于理解。遵循PEP 8风格指南,使用小写字母和下划线分隔单词,避免单字母命名和保留字。函数名应描述功能,以动词开头,避免泛化名称,使用有意义的缩写,保持命名风格一致,避免魔法数字。示例包括 `calculate_area_of_circle`、`fetch_data_from_api` 和 `save_file_to_disk`。这些实践有助于创建易读、易维护的代码。
WK
9 0
|
11天前
|
存储 算法 API
Python学习五:函数、参数(必选、可选、可变)、变量、lambda表达式、内置函数总结、案例
这篇文章是关于Python函数、参数、变量、lambda表达式、内置函数的详细总结,包含了基础知识点和相关作业练习。
18 0