【Python】基础数据结构:列表——元组——字典——集合

这篇具有很好参考价值的文章主要介绍了【Python】基础数据结构:列表——元组——字典——集合。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、简述

Python提供了多种内置的数据结构,包括列表(List)、元组(Tuple)和字典(Dictionary)。这些数据结构在Python编程中都有着广泛的应用,但它们各有特点和适用场景。

  • 列表是一种有序的集合,可以随时添加和删除其中的元素。列表是可变的,也就是说,你可以修改列表的元素和大小。列表的元素可以是任何类型,包括数字、字符串、布尔值,甚至可以是其他列表。列表通常用于存储有序的元素集合,例如一列数字或一组名字。

  • 元组和列表非常相似,但元组是不可变的,也就是说,你不能修改元组的元素和大小。这使得元组比列表更安全,因为你可以确保元组的元素在程序运行过程中不会被改变。元组通常用于存储不应该被改变的数据集,例如一个日期或一个地理位置的经纬度。

  • 字典是一种无序的集合,它存储的是键值对。字典的键必须是唯一的,而值可以是任何类型。字典是可变的,也就是说,你可以添加、删除和修改字典的键值对。字典通常用于存储和查找键值对,例如一个电话簿或一个词频统计。(哈希表)

  • 集合是一个无序的,不重复的元素集。基本功能包括关系测试和消除重复元素。集合对象还支持union(联合),intersection(交),difference(差)和symmetric difference(对称差集)等数学运算

对比

  • 列表和元组都是有序的集合,它们的主要区别在于列表是可变的,而元组是不可变的。这意味着如果你需要一个可以随时添加、删除和修改元素的集合,你应该使用列表;如果你需要一个一旦创建就不能更改的集合,你应该使用元组。

  • 字典和列表、元组的主要区别在于字典是无序的,而且它存储的是键值对而不是单个的元素。这使得字典在处理需要键值对的数据时非常有用,例如在查找元素时,字典的查找速度通常比列表和元组快。

  • 集合和列表、元组、字典的主要区别在于集合是无序的,不重复的元素集。这使得集合在处理需要元素唯一性和集合操作的场合下非常有用,例如在查找元素时,集合的查找速度通常比列表快。
    【Python】基础数据结构:列表——元组——字典——集合,python,python,数据结构,原力计划

二、Python中的列表详解

Python中的列表(List)是一种常用的数据结构,它可以存储一系列有序的元素。列表是可变的,这意味着你可以在创建列表后添加、删除或更改其元素。列表中的元素可以是任何类型,包括数字、字符串、布尔值,甚至可以是其他列表。

2.1 创建列表

创建列表非常简单,只需要将元素放在方括号[]中,并用逗号,分隔。例如:

my_list = [1, 2, 3, 'apple', 'banana', True]

在上面的例子中,my_list就是一个包含了三个整数、两个字符串和一个布尔值的列表。

2.2 访问列表元素

你可以通过索引来访问列表中的元素。在Python中,索引是从0开始的。例如,要访问上面列表中的第一个元素,你可以这样做:

first_item = my_list[0]  # first_item 现在是 1

你也可以使用负索引来从列表的末尾开始访问元素。例如,my_list[-1]将返回列表中的最后一个元素。

2.3 修改列表元素

由于列表是可变的,你可以通过索引来修改列表中的元素。例如:

my_list[0] = 'orange'  # my_list 现在是 ['orange', 2, 3, 'apple', 'banana', True]

2.4 列表切片

切片是一种获取列表子集的方法。你可以通过指定开始索引和结束索引来获取一个新的列表。例如:

sub_list = my_list[1:4]  # sub_list 现在是 [2, 3, 'apple']

注意,切片是左闭右开的,也就是说,返回的新列表包含开始索引的元素,但不包含结束索引的元素。

2.5 列表方法

Python的列表提供了许多方法,如append()insert()remove()pop()sort()等。这些方法可以让你更方便地操作列表。

例如,append()方法可以在列表的末尾添加一个新的元素:

my_list.append('grape')  # my_list 现在是 ['orange', 2, 3, 'apple', 'banana', True, 'grape']

remove()方法可以删除列表中的特定元素:

my_list.remove('banana')  # my_list 现在是 ['orange', 2, 3, 'apple', True, 'grape']

2.6 列表推导式

列表推导式是Python中创建列表的一种简洁方式。它可以用一行代码生成一个新的列表。例如,下面的代码生成了一个包含1到10的平方的列表:

squares = [x**2 for x in range(1, 11)]  # squares 是 [1, 4, 9, 16, 25, 36, 49, 64, 81, 100]

三、Python中的元组详解

Python中的元组(Tuple)是一种常用的数据结构,它可以存储一系列有序的元素。元组和列表非常相似,但有一个关键的区别:元组是不可变的,这意味着你不能在创建元组后添加、删除或更改其元素。元组中的元素可以是任何类型,包括数字、字符串、布尔值,甚至可以是其他元组或列表。

3.1 创建元组

创建元组非常简单,只需要将元素放在圆括号()中,并用逗号,分隔。例如:

my_tuple = (1, 2, 3, 'apple', 'banana', True)

在上面的例子中,my_tuple就是一个包含了三个整数、两个字符串和一个布尔值的元组。

注意,如果你要创建一个只包含一个元素的元组,你需要在元素后面添加一个逗号,例如my_tuple = (1,)

3.2 访问元组元素

你可以通过索引来访问元组中的元素。在Python中,索引是从0开始的。例如,要访问上面元组中的第一个元素,你可以这样做:

first_item = my_tuple[0]  # first_item 现在是 1

你也可以使用负索引来从元组的末尾开始访问元素。例如,my_tuple[-1]将返回元组中的最后一个元素。

3.3 元组是不可变的

一旦元组被创建,你就不能更改它的元素或大小。这意味着你不能像列表那样添加、删除或修改元组的元素。如果你尝试这样做,Python将引发错误。

my_tuple[0] = 'orange'  # 这将引发错误

尽管元组本身是不可变的,但如果元组中的元素是可变的(如列表),那么你可以修改这些元素。

3.4 元组切片

切片是一种获取元组子集的方法。你可以通过指定开始索引和结束索引来获取一个新的元组。例如:

sub_tuple = my_tuple[1:4]  # sub_tuple 现在是 (2, 3, 'apple')

注意,切片是左闭右开的,也就是说,返回的新元组包含开始索引的元素,但不包含结束索引的元素。

3.5 元组方法

由于元组是不可变的,所以它的方法比列表少。Python的元组只提供了两个方法:count()index()count()方法用于计算元组中特定元素的数量,index()方法用于找到元组中特定元素的第一个匹配项的索引。

my_tuple = (1, 2, 3, 2, 2, 4)
count = my_tuple.count(2)  # count 现在是 3
index = my_tuple.index(2)  # index 现在是 1

四、Python中的字典详解

Python中的字典(Dictionary)是一种非常重要的数据结构,它存储的是键值对(key-value pairs)。字典是可变的,这意味着你可以在创建字典后添加、删除或更改其键值对。字典的键和值可以是任何类型,包括数字、字符串、布尔值,甚至可以是其他字典或列表。

4.1 创建字典

创建字典非常简单,只需要将键值对放在大括号{}中,并用逗号,分隔。每个键值对中的键和值用冒号:分隔。例如:

my_dict = {'name': 'Alice', 'age': 20, 'is_student': True}

在上面的例子中,my_dict就是一个包含了三个键值对的字典。

4.2 访问字典元素

你可以通过键来访问字典中的值。例如,要访问上面字典中的’name’键对应的值,你可以这样做:

name = my_dict['name']  # name 现在是 'Alice'

如果你尝试访问字典中不存在的键,Python将引发KeyError。为了避免这种错误,你可以使用get()方法来访问字典中的值,如果键不存在,get()方法将返回None或者你指定的默认值。

city = my_dict.get('city', 'New York')  # city 现在是 'New York'

4.3 修改字典元素

你可以通过键来修改字典中的值。例如:

my_dict['age'] = 21  # my_dict 现在是 {'name': 'Alice', 'age': 21, 'is_student': True}

你也可以使用update()方法来一次更新字典中的多个键值对。

my_dict.update({'age': 22, 'city': 'London'})  # my_dict 现在是 {'name': 'Alice', 'age': 22, 'is_student': True, 'city': 'London'}

4.4 字典方法

Python的字典提供了许多方法,如keys()values()items()pop()clear()等。这些方法可以让你更方便地操作字典。

例如,keys()方法可以返回字典中所有的键,values()方法可以返回字典中所有的值,items()方法可以返回字典中所有的键值对:

keys = my_dict.keys()  # keys 现在是 dict_keys(['name', 'age', 'is_student', 'city'])
values = my_dict.values()  # values 现在是 dict_values(['Alice', 22, True, 'London'])
items = my_dict.items()  # items 现在是 dict_items([('name', 'Alice'), ('age', 22), ('is_student', True), ('city', 'London')])

pop()方法可以删除并返回字典中特定键的值,clear()方法可以清空字典:

age = my_dict.pop('age')  # age 现在是 22,my_dict 现在是 {'name': 'Alice', 'is_student': True, 'city': 'London'}
my_dict.clear()  # my_dict 现在是 {}

五、Python中的集合详解

Python中的集合(Set)是一种独特的数据结构,它提供了一种有效的方式来处理数据的唯一性和集合操作。集合是无序的,不重复的元素集,这意味着集合中的元素是唯一的,且不保证插入顺序。

5.1 创建集合

创建集合非常简单,只需要将元素放在大括号{}中,并用逗号,分隔。例如:

my_set = {1, 2, 3, 'apple', 'banana', True}

在上面的例子中,my_set就是一个包含了三个整数、两个字符串和一个布尔值的集合。

注意,如果你要创建一个空集合,你需要使用set()函数,而不是空的大括号,因为空的大括号{}在Python中表示一个空字典。

empty_set = set()  # 创建一个空集合

5.2 集合的基本操作

集合提供了一系列的基本操作,包括添加元素、删除元素和检查元素是否存在。

my_set = {1, 2, 3}

my_set.add(4)  # my_set 现在是 {1, 2, 3, 4}
my_set.remove(1)  # my_set 现在是 {2, 3, 4}
print(2 in my_set)  # 输出 True

5.3 集合的数学运算

集合支持一些常见的数学运算,如并集、交集、差集和对称差集。

set1 = {1, 2, 3, 4}
set2 = {3, 4, 5, 6}

print(set1.union(set2))  # 输出 {1, 2, 3, 4, 5, 6}
print(set1.intersection(set2))  # 输出 {3, 4}
print(set1.difference(set2))  # 输出 {1, 2}
print(set1.symmetric_difference(set2))  # 输出 {1, 2, 5, 6}

5.4 集合的应用

由于集合中的元素是唯一的,所以集合常常被用来去除列表中的重复元素。

my_list = [1, 2, 2, 3, 3, 3]
my_set = set(my_list)  # my_set 现在是 {1, 2, 3}

集合也常常被用在成员测试中,因为在集合中查找元素通常比在列表中查找元素更快。

my_set = {1, 2, 3, 4, 5}
print(3 in my_set)  # 输出 True


~ 文章来源地址https://www.toymoban.com/news/detail-692697.html

到了这里,关于【Python】基础数据结构:列表——元组——字典——集合的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • python实验三:组合数据类型(列表、元组&字典)

    构造一个person的列表结构list1,元素为参加调查问卷的人员的名字(不用太多),(建立列表有很多方法,选择一种你喜欢的),命名为3.1.py 从键盘上输入一个人名,判断这个人名是否在list1中。 (1)如果人名在列表中,就输出“您已经参与过调查,感谢参与!!!”。 (

    2024年02月03日
    浏览(61)
  • 【Python零基础学习入门篇④】——第四节:Python的列表、元组、集合和字典

    ⬇️⬇️⬇️⬇️⬇️⬇️ ⭐⭐⭐Hello,大家好呀我是陈童学哦,一个普通大一在校生,请大家多多关照呀嘿嘿😁😊😘 🌟🌟🌟 技术这条路固然很艰辛,但既已选择,该当坚毅地走下去,加油! 🌤️PUA: ” 你所看到的惊艳都曾平庸历练 **“**🚀🚀🚀 🍉🍉🍉 最后让我

    2024年02月04日
    浏览(68)
  • Python数据容器——列表、元组、字符串、集合、字典

    作者: Insist-- 个人主页: insist--个人主页 本文专栏:Python专栏 专栏介绍: 本专栏为 免费 专栏,并且会持续更新python基础知识,欢迎各位订阅关注。 目录 一、了解数据容器 1. 为什么需要数据容器? 2. 数据容器是什么? 二、数据容器—列表(list) 1. 列表的定义 2. 列表的

    2024年02月08日
    浏览(61)
  • python常见的数据类型与数据结构(一)数字类型 字符串类型 布尔类型 列表 集合 字典 的定义与常规操作方法

    数字类型有int(整数),float(浮点数)和complex(复数型),其中int与float被大家所常用并且可以使用int()和float()函数相互转换。如果字符串只包含数字和小数点也可以被这两种函数强制转换。复数型,则少被人们使用,大都是用在数学公式和物理公式的计算上。 字符串类型较为简单

    2024年02月21日
    浏览(47)
  • Python -- 列表、元组、字典、集合

    目录 一、列表 1.列表介绍 1)列表的介绍 2)列表创建方式 2.列表的增删改查 1)获取列表中某个元素(查) 2)修改元素的值(改) 3)删除元素(删) 4)添加元素(增) 3.其它常用方法 1)列表常用方法 2)常用Python内置方法 二、元组 1.元组介绍 1)元组的介绍 2)元组创建

    2024年02月03日
    浏览(59)
  • Python数据容器(列表list、元组tuple、字符串str、字典dict、集合set)详解

    相关介绍: 一种可以容纳多份数据的数据类型,容纳的每一份数据称之为一个元素。每一个元素,可以是任意类型的数据 分为五类: 列表[list]、元组(tuple)、字符串(str)、集合{set}、字典{dict} 相应区别: 列表 元祖 字符串 集合 字典 元素数量 多个 多个 多个 多个 多个 元素类

    2024年02月11日
    浏览(82)
  • Python 集合(列表 ,元组,集合, 字典)

    Python 编程语言中有四种集合数据类型: 列表(List)是一种有序和可更改的集合。允许重复的成员。 元组(Tuple)是一种有序且不可更改的集合。允许重复的成员。 集合(Set)是一个无序和无索引的集合。没有重复的成员。 字典(Dictionary)是一个无序,可变和有索引的集合

    2024年02月02日
    浏览(57)
  • Python 中将元组列表转换为字典

    使用 dict 类将元组列表转换为字典,例如 my_dict = dict(list_of_tuples) 。 dict 类可以传递一个元组列表并返回一个新字典。 我们使用 dict 类将元组列表转换为字典。 请注意 ,此方法仅在您的元组每个包含 2 个元素(一个键和一个值)时才有效。 或者,我们可以使用 字典推导 。

    2023年04月08日
    浏览(46)
  • Python——第3章 列表、元组、字典、集合与字符串

    append()、insert()、extend() pop()、remove() count()、index() sort()、reverse() 切片是用来获取列表、元组、字符串等有序序列中部分元素的一种语法。在形式上,切片使用2个冒号分隔的3个数字来完成。 [start🔚step] 其中第一个数字start表示切片开始位置,默认为0;第二个数字end表示切片

    2024年02月07日
    浏览(58)
  • 【python基础】复杂数据类型-列表类型(元组)

    列表非常适合用于存储在程序运行期间可能变化的数据集。列表是可以修改的。 然而,有时候需要创建一系列不可修改的元素,元组可以满足这种需求 python将不能修改的值称为不可变的,而不可变的列表被称为元组。 元组看起来犹如列表,但使用圆括号而不是方括号来标识

    2024年02月07日
    浏览(66)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包