Python语言的数据结构

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

    🎂在我们的Python语言当中所谓的数据结构其实就是一些存储数据的类型。就比如说我们C语言当中的数组和结构体一样。我们Python语言当中的数据类型包括列表,元组,字典,集合,字符串五种形式。我们使用这四种不同的数据类型可以对数据进行不同的处理操作。接下来我们就依次来认识一下Python语言中的数据类型。

    🍫1.列表

    🎂列表可以说是我们见得最多的Python数据结构之一了。列表的实质和我们C语言中的数组很相似。C语言中的数组可以存储一串相同的数据到我们指定的内存当中,我们可以通过下表引用的方式进行数组元素的处理。而我们Python语言当中的列表能够将我们不同的数组存储到我们的内存当中。我们同样可以使用下表索引的方式找到我们指定的元素。和我们的C语言不同的是,我们的列表可以通过正方向索引也可以通过负方向进行索引。正方向索引是从0开始到我们数组元素个数-1的位置。而我们的负方向索引可以从负一一直到我们的负元素个数进行依次检查。我们的列表由方括号引出一系列的数据,数据之间必须使用逗号进行分隔。列举一个简单的代码示例如下:

python数据结构,初识python,python

    🎂就像我们上面运行结果所显示的那样,我们从正方向找到元素和从我们的负方向找到我们的元素的效果都是一样的。

    🎂在我们的Python代码当中我们的列表不仅仅可以进行数据的存储,我们的Python语言还自带了一系列的功能以便于我们对列表进行一系列相关的处理工作。

    🎂对于列表的操作有很多种,我们可以通过列表的使用函数(方法)扩充我们列表的内容。具体的代码如下:

python数据结构,初识python,python

#1.append()方法
#在列表的末尾添加一个新的数据项
L1=["red","green","blue"]
print(L1)
L1.append("black")
print(L1)

python数据结构,初识python,python

#2.insert()方法
#在特定下标的位置处插入一个元素
L1=["red","green","blue"]
print(L1)
L1.insert(1,"yellow")
print(L1)

python数据结构,初识python,python

#3.extend()方法
#将一个列表中的元素放到第二个列表的末尾,及合并列表
L1=["red","green","blue"]
L2=["hello","lihua","bart"]
L1.extend(L2)
print(L1)
print(L2)

python数据结构,初识python,python 

#4.remove()方法
#删除列表当中第一个与X匹配的元素
L1=["red","green","blue"]
L1.remove("green")
print(L1)

python数据结构,初识python,python

#5.pop()方法
#从列表当中移除obj指定的元素对象,如果没有参数就默认删除最后一个
L1=["red","blue","green"]
s=L1.pop(1)
print(s)
print(L1)

python数据结构,初识python,python

#6.index()方法
#用于返回列表中第一个与x匹配的元素的下标的位置。
L1=["red","blue","green"]
s=L1.index("blue")
print(s)

 python数据结构,初识python,python

#7.count()方法
#用于返回列表中元素x出现的次数
L1=["red","blue","green","green","green"]
s=L1.count("green")
print(s)

python数据结构,初识python,python 

#8.reverse()方法
#反转列表中的元素的位置
L1=["red","blue","green"]
L1.reverse()
print(L1)

 python数据结构,初识python,python

#9.sort()方法
#对列表元素进行排序
L1=["red","green","blue"]
L1.sort()
print(L1)

    🎂在介绍完我们的列表之后我们再来认识一下和我们的列表很相似的数据结构——元组。

    🍫2.元组

    🎂说到元组肯定最先需要点明的就是我们元组和列表之间的差异。我们列表当中的数据对象都是可以改变的,我们可以通过相关的操作对我们列表当中的数据进行改写。而我们的元组中的元素不能被修改,我们只可以对元组中的元素进行找到等相关操作。

    🎂说完元组和列表的差异,我们就正式来认识一下元组的书写方式,首先我们的元组是由两个圆括号构成,圆括号当中可以存放一系列的数据,数据之间必须使用逗号进行分隔。那么我们同样使用一段代码加深我们对于元组的认识:

python数据结构,初识python,python

list1=("hello",12,"world",13)
list2=tuple("hello")
print(list1)
print(list2)

   🎂 当我们的元组当中只有一个元素的时候我们需要在前面表明tuple字样,表示我们所列出的数据是一个元组。在对我们的元组介绍完之后,我们再来认识一下我们的集合。

    🍫3.字符串

    🎂字符串就是一串字符,我们同样可以使用下表正或负索引进行查找指定的字符元素,但是需要记住的是字符串和我们的元组一样,其中放入的数据不能再被改写。所以我们只能对字符串进行查找等操作。同时我们还可以使用Python语言当中的内置函数对字符串进行指定的处理。所示的代码如下:

python数据结构,初识python,python

strings="abcdef"
for i in strings:
    print(i)

    🎂对于字符串的操作我们还有一步重要的操作:切片操作。对于字符串的切片操作和我们的range()函数较为相似。同样拥有三个参数其具体的语法如下:序列名[i:j:k] 其中 i 表示的是开始索引的位置,j表示的是结束索引的位置,k是读取元素时的步长。具体的代码操作如下:

python数据结构,初识python,python

#对于字符串进行分隔操作
strings="abcdef"
print(strings[1:6:2])

    🍫4.字典

    🎂在Python语言当中的,字典dict使用键值的形式来存储数据,所谓的键值指的就是一个标签名对应着一个值,我们可以将其表示成 标签名:键值 的形式。Python中我们可以使用大括号来创建字典,其中键和值之间使用冒号隔开,一个键值对被称为一个条目,每一个条目直接使用逗号隔开。如果大括号里面没有键值对的话就会创建一个空字典。我们可以使用 dict[键]=值的形式向我们字典当中添加新的键值对,如果我们添加的键在字典中已经存在就会将我们添加的操作修改为更新。同样的我们可以使用Python语言的内置函数进行字典内容的查找和修改,其中所示的代码如下:

python数据结构,初识python,python

#对于字典的创建
d1=dict()
print(d1)
d1=[("lihua",1),("zhangsan",2),("lisi",3)]
d2=dict(d1)
print(d2)
d3=dict(red=1,green=2,blue=3)
print(d3)

    🍫5.集合

    🎂集合(set)是Python中的数据结构之一,它与列表相似可以存储多个数据元素,不同之处在于集合由不同的元素组成,并且元素的存放是无序的。需要注意的是,集合中的元素不能是列表,集合,字典等可变对象。(其他的数据结构除了字符串外,均支持前台操作)我们的集合的创建形式和我们的字典很相似也是使用大括号进行创建。值得注意的是,由于集合不允许数据元素重复的特点我们可以使用集合进行数据的去重操作。在这里我们同样可以使用Python函数当中自带的一些函数功能进行集合元素的处理(求交集,并集,补集等)其中使用的代码主要如下:

python数据结构,初识python,python

    🎂在了解完Python语言当中的数据结构的使用方法之后,我们就可以对数据进行一些特殊的处理了,比如:单词的统计和单词的去重等处理。我们可以通过一些简单的案例来加深我们对这一部分知识的理解和使用。

    🍫综合案例:统计如下一段文章中每一个单词出现的次数。

    At half past eight,Mr.Dursley picked up his briefcase,pecked Mrs.Dursley on the cheek,and tried to kiss Dudley good-bye but missed,because Dudley was now having a tantrum and throwing his cereal at the walls."Little tyke",chorrtled Mr.Dursley as he left a tantrum and throwing his cereal at the walls."Little tyke",chortled Mr.Dursley as he left the house.

    🎂对于上面的实验操作代码步骤如下:

python数据结构,初识python,python

python数据结构,初识python,python

import re
strings='''At half past eight,Mr.Dursley picked up his briefcase,
           pecked Mrs.Dursley on the cheek,and tried to kiss Dudley
          good-bye but missed,because Dudley was now having a tantrum 
          and throwing his cereal at the walls."Little tyke",chorrtled 
          Mr.Dursley as he left a tantrum and throwing his cereal at the 
          walls."Little tyke",chortled Mr.Dursley as he left the house.'''
strings=strings.lower()     #将字符串中的大写字母全部转换成小写
strings=re.sub('[,.\'"-]',"",strings)      #去除标点符号
words_list=strings.split()   #文章中所有单词的列表
print("文章中单词总数:",len(words_list))
print(words_list)
words_set=set(words_list)
print("去除重复后单词的个数:",len(words_set))
print(words_set)
dic=dict()
for i in words_set:
    dic[i]=words_list.count(i)
print("词频统计结果如下:")
print(dic)

    🎂以上的程序中,主要按照如下步骤进行处理:

  ①把文章存储到字符串strings中

  ②调用lower()函数转换成小写

  ③用正则表达式的sub方法去除符号,正则表达式在re模块中,因此在程序第一行要导入re模块。正则表达式是一个特殊的字符序列,它能够方便地检查一个字符是否与某种模式匹配。

  ④利用split方法把字符串strings分割成一个个的单词,存储到列表words_set中

  ⑤利用集合set去除列表中的重复单词,得到一个单词的集合words_set

  ⑥利用for循环遍历单词集合words_set,利用文章单词列表words_list的count方法进行次数的统计,并把结果存到字典dict中,其中键是集合words_set中的单词,值是单词出现的次数,最后打印输出。

    🎂以上就是我们对于上面的案例的全部的步骤分析。那么我们本次的博客可以就到此结束了,感谢您的观看,再见。文章来源地址https://www.toymoban.com/news/detail-737172.html

到了这里,关于Python语言的数据结构的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 【数据结构(一)】初识数据结构

    ❣博主主页: 33的博客❣ ▶文章专栏分类: Java从入门到精通◀ 🚚我的代码仓库: 33的代码仓库🚚 🫵🫵🫵 关注我带你学更多数据结构知识 数据结构是计算机存储,组织数据的方式,指相互之间存在一种或多种特定关系的数据元素的集合,从这篇文章开始,我们将一起进入数

    2024年04月09日
    浏览(57)
  • 【数据结构】 初识集合框架

    这里博主将简单介绍一下集合框架,想要详细了解的可以点击下方链接进行查看 java集合官方教程 Java 集合框架 Java Collection Framework ,又被称为容器 container ,是定义在 java.util 包下的一组接口 interfaces 和其实现类 classes 。 其主要表现为将多个元素 element 置于一个单元中,用于

    2024年02月13日
    浏览(41)
  • 数据结构-初识泛型

    写在前: 这一篇博客主要来初步的记录以下泛型的相关内容,内容比较琐碎,就不进行目录的整合,后续可能会对泛型这里进行系统性的梳理,此篇博客主要是对泛型有一个简单的认识与理解,需要知晓的内容。 当我调用func()的时候,进行传递的是一个真实的数据,是一个

    2024年02月07日
    浏览(44)
  • 【数据结构】初识泛型

    我们来看下面的代码: 通过上面的代码我们发现,虽然在这种情况下,当前数组任何数据都可以存放,但是,更多情况下,我们还是希望他只能够持有一种数据类型。而不是同时持有这么多类型。 泛型语法: 我们可以把上面的代码用泛型进行改写: 代码解释: 类名后的 尖

    2024年02月07日
    浏览(40)
  • 【数据结构】初识

    💓 博客主页:江池俊的博客 ⏩ 收录专栏:数据结构探索 🎉如果觉得博主的文章还不错的话,请点赞👍收藏🌟 三连支持一下博主💞 目录 一、数据结构的基本认知 1.什么是数据结构 📌数据结构和数据库的区别 2.什么是算法 ? 3.数据结构和算法的重要性 4.如何学好数据结

    2024年02月16日
    浏览(31)
  • 初识数据结构之三元组

    在初步了解了数据结构的研究内容后,做一个简单的尝试——三元组。 三元组是数据结构里的一个基本概念。主要是用来存储稀疏矩阵的一种压缩方式,也叫三元组表。 三元组中存放三个值(x,y,z)分别代表矩阵的行、列、值。 ADT Triplet { 数据对象:D = {e1,e2,e3 | e1,e2,e3属于E

    2024年02月11日
    浏览(39)
  • 数据结构--初识栈和队列

    栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。 压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。 出栈:栈的删除操作

    2024年02月12日
    浏览(36)
  • Python数据结构与算法-数据结构(列表、栈、队列、链表)

    数据结构是指相互之间存在这一种或者多种关系的数据元素的集合和该集合中元素之间的关系组成。 简单来说,数据结构就是设计数据以何种方式组织并存储在计算机中。 比如:列表、集合与字典等都是一种数据结构。 N.Wirth:“程序=数据结构+算法” 数据结构按照其 逻辑结

    2024年02月08日
    浏览(58)
  • 【Python数据结构与算法】线性结构小结

    🌈个人主页: Aileen_0v0 🔥系列专栏:PYTHON学习系列专栏 💫\\\"没有罗马,那就自己创造罗马~\\\"   目录 线性数据结构Linear DS 1.栈Stack 栈的两种实现 1.左为栈顶,时间复杂度为O(n) 2.右为栈顶,时间复杂度O(1)   2.队列Queue 3.双端队列Deque 4.列表List 5.链表 a.无序链表的实现 b.有序链表的实

    2024年02月04日
    浏览(42)
  • 数据结构之基本数据类型(Python)

    接下来我们将会先学习Python 的基本数据类型,以及堆、栈、链表、树和图等数据结构,这是学习算法的基础。套用行业内的一句话: 数据结构是算法的骨骼。 数据结构是一门庞大的学科,远不是一本书就可以讲清楚的。如果想更深入地学习,可以参考类似《数据结构教程》

    2024年01月19日
    浏览(52)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包