首页 > 编程语言 >python常见数据结构及方法

python常见数据结构及方法

时间:2024-04-03 17:45:52浏览次数:34  
标签:返回 元素 python s1 常见 列表 lst 数据结构 字典

Python 提供了多种内置的数据结构,这些数据结构非常灵活且功能强大,能够满足各种程序设计需求。下面是一些最常用的 Python 数据结构及其内置方法的详细说明:

1. 列表(List)

列表是 Python 中最基本的数据结构之一。列表可以包含不同类型的元素,包括另一个列表。

常用内置方法

  • append(x): 在列表的末尾添加一个元素 x
    lst = [1, 2, 3]
    lst.append(4)  # lst 现在是 [1, 2, 3, 4]
    
  • extend(iterable): 使用可迭代对象中的元素扩展列表。
    lst = [1, 2, 3]
    lst.extend([4, 5])  # lst 现在是 [1, 2, 3, 4, 5]
    
  • insert(i, x): 在指定位置 i 插入一个元素 x
    lst = [1, 2, 4]
    lst.insert(2, 3)  # lst 现在是 [1, 2, 3, 4]
    
  • remove(x): 移除列表中第一个值为 x 的元素。
    lst = [1, 2, 3, 2]
    lst.remove(2)  # lst 现在是 [1, 3, 2]
    
  • pop([i]): 移除列表中指定位置的元素(默认为最后一个元素),并返回该元素的值。
    lst = [1, 2, 3]
    lst.pop()  # 返回 3,lst 现在是 [1, 2]
    
  • clear(): 移除列表中的所有元素。
    lst = [1, 2, 3]
    lst.clear()  # lst 现在是 []
    
  • index(x[, start[, end]]): 返回列表中第一个值为 x 的元素的索引。
    lst = ['a', 'b', 'c', 'b']
    lst.index('b')  # 返回 1
    
  • count(x): 返回 x 在列表中出现的次数。
    lst = [1, 2, 3, 2]
    lst.count(2)  # 返回 2
    
  • sort(key=None, reverse=False): 对列表进行排序。
    lst = [3, 1, 2]
    lst.sort()  # lst 现在是 [1, 2, 3]
    
  • reverse(): 反转列表中的元素。
    lst = [1, 2, 3]
    lst.reverse()  # lst 现在是 [3, 2, 1]
    
  • copy(): 返回列表的浅拷贝。
    lst = [1, 2, 3]
    lst2 = lst.copy()  # lst2 是 [1, 2, 3]
    

2. 元组(Tuple)

元组是不可变的序列,一旦创建就不能修改,可以包含不同类型的元素。

常用内置方法

  • count(x): 返回 x 在元组中出现的次数。
    tup = (1, 2, 3, 2)
    tup.count(2)  # 返回 2
    
  • index(x[, start[, end]]): 返回元组中第一个值为 x 的元素的索引。
    tup = ('a', 'b', 'c', 'b')
    tup.index('b')  # 返回 1
    

3. 字典(Dictionary)

字典是一种可变容器模型,且可存储任意类型对象,字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号 , 分割,整个字典包括在花括号 {} 中。

常用内置方法

  • get(key[, default]): 返回指定键的值,如果键不在字典中返回 default 设置的默认值。
    d = {'a': 1, 'b': 2}
    d.get('a', 0)  # 返回 1
    d.get('c', 0)  # 返回 0
    
  • items(): 以列表返回可遍历的 (键, 值) 元组数组。
    d = {'a': 1, 'b': 2}
    list(d.items())  # 返回 [('a', 1), ('b', 2)]
    
  • keys(): 以列表返回一个字典所有的键。
    d = {'a': 1, 'b': 2}
    list(d.keys())  # 返回 ['a', 'b']
    
  • values(): 以列表返回字典中的所有值。
    d = {'a': 1, 'b': 2}
    list(d.values())  # 返回 [1, 2]
    
  • pop(key[, default]): 删除字典给定键 key 所对应的值,返回值为被删除的值。key 值必须给出。若 key 不存在,则返回 default 值。
    d = {'a': 1, 'b': 2}
    d.pop('b')  # 返回 2,d 现在是 {'a': 1}
    
  • popitem(): 随机返回并删除字典中的最后一对键和值。
    d = {'a': 1, 'b': 2}
    d.popitem()  # 返回 ('b', 2),d 现在可能是 {'a': 1}
    
  • update([other]): 更新字典。
    d = {'a': 1, 'b': 2}
    d.update({'b': 10, 'c': 3})  # d 现在是 {'a': 1, 'b': 10, 'c': 3}
    
  • clear(): 清空字典内所有元素。
    d = {'a': 1, 'b': 2}
    d.clear()  # d 现在是 {}
    

4. 集合(Set)

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

常用内置方法

  • add(elem): 向集合添加元素。
    s = {1, 2, 3}
    s.add(4)  # s 现在是 {1, 2, 3, 4}
    
  • update([iterable]): 使用可迭代对象中的元素更新集合。
    s = {1, 2, 3}
    s.update([4, 5])  # s 现在是 {1, 2, 3, 4, 5}
    
  • remove(elem): 从集合中移除元素,如果元素不存在,则引发 KeyError。
    s = {1, 2, 3}
    s.remove(3)  # s 现在是 {1, 2}
    
  • discard(elem): 从集合中移除元素,如果元素不存在,不会引发错误。
    s = {1, 2, 3}
    s.discard(4)  # s 仍然是 {1, 2, 3}
    
  • pop(): 随机移除一个元素,并返回该元素的值。
    s = {1, 2, 3}
    s.pop()  # 可能返回 1、2 或 3,s 减少了一个元素
    
  • clear(): 清空集合内所有元素。
    s = {1, 2, 3}
    s.clear()  # s 现在是 set()
    
  • union([iterable]): 返回两个集合的并集。
    s1 = {1, 2}
    s2 = {2, 3}
    s1.union(s2)  # 返回 {1, 2, 3}
    
  • intersection([iterable]): 返回集合的交集。
    s1 = {1, 2}
    s2 = {2, 3}
    s1.intersection(s2)  # 返回 {2}
    
  • difference([iterable]): 返回集合的差集。
    s1 = {1, 2}
    s2 = {2, 3}
    s1.difference(s2)  # 返回 {1}
    
  • symmetric_difference([iterable]): 返回两个集合中不重复的元素集合,即并集减去交集。
    s1 = {1, 2}
    s2 = {2, 3}
    s1.symmetric_difference(s2)  # 返回 {1, 3}
    

这些是 Python 中几种基本数据结构的内置方法。每种数据结构都有其特定的用途和操作方法,了解它们的内置方法可以帮助你更有效地使用 Python 进行编程。

标签:返回,元素,python,s1,常见,列表,lst,数据结构,字典
From: https://www.cnblogs.com/AllenWongFly/p/18113210

相关文章

  • 【数据结构与算法篇】动态顺序表实战项目:通讯录
    【数据结构与算法】动态顺序表实战项目:通讯录......
  • 【Python列表的使用和创建(详细版)】
    一.列表概念1.概念:在Python中列表是一个对象的集合。二.列表的创建1.基本语法[]创建例:a=[10,20,30,"无限",'txt']a=[]#创建一个空列表2.list()创建(1).使用list()可以将任何可迭代的数据转化成列表。例:a=list("cosfirst")b=list(range(10))print(a)prin......
  • Python语法学习三之函数
    一、简单函数定义和调用def函数名():代码#无参数,无返回值的函数defprintName():print"cehae"printName()#无参数,有返回值的函数defgetAge():return18printgetAge()#有参数,无返回值的函数defprintSex(sex):printsexpr......
  • Python语法学习四之IO操作
    一、文件操作1-1、打开/创建文件在python,使用open函数,可以打开一个已经存在的文件,或者创建一个新文件open(文件名,访问模式)f=open('C:/Users/cehae/Desktop/test.txt','w')访问模式1-2、关闭文件close()f=open('C:/Users/cehae/Desktop/test.txt','r')#关闭文......
  • Python语法学习五之面向对象
    一、面向对象11-1、定义类语法:class类名:方法列表#定义类classCar:defgetCarInfo(self):#定义属性,和Java等语言差别很大。print('车轮子个数:%d,颜色%s'%(self.wheelNum,self.color))defmove(self):print("车正在移......
  • 自学python能干些什么副业,自学python能做什么工作
    前言大家好,小编来为大家解答以下问题,有人自学python成功赚钱了吗,自学python能干些什么副业,现在让我们一起来看看吧!自学Python找工作主要看自己的学习能力,自学能力很强学完并精通当然可以工作,不过对于大多数人而言一般都挺难,学习不成系统,遇到问题没人解决很容易放弃半途而......
  • Python免费下载安装全流程(Python 最新版本),新手小白必看!
    前言今天换了新的电脑,需要重新安装python和PyCharm,就简单的写个教程吧~一、Python下载1、进入Python官网官网地址:https://www.python.org2、点击【Downloads】展开后点击【Windows】跳转到下载python版本页面,选择"StableReleases"稳定版本,我下载的是Python3.10.10版......
  • Python就业前景如何?薪资待遇怎么样?
    前言Python作为一种高级编程语言,已经在多个领域得到了广泛的应用,包括数据分析、人工智能、Web开发等。随着技术的不断发展和应用领域的不断扩展,Python的就业前景也越来越广阔。首先,Python在数据分析领域的应用非常广泛。随着大数据时代的到来,数据分析已经成为了许多企业......
  • 学了python可以做什么兼职,学python真的能做兼职吗??
    前言学好Python可以做什么兼职1、爬虫首先,除了Python的语法基础的之外的必修课就是web开发和爬虫的内容了。如果是想依靠这两个方向来赚钱的话,就必须要清楚的知道开发什么或者爬什么数据才能赚钱。如果你都不知道的话,你可以开个网店,或者去猪八戒做服务的外包。不管是web......
  • vs2022 开始自己的第一个Python程序
    这是针对于vs2022安装和使用教程(详细)创建Python项目的简单示例,旨在示范从项目搭建到程序运行的简单流程,代码就是打印HelloWorld,适合初次使用vs2022的用户~ 1.以Python为例,下拉到Python应用程序,点击后点击右下角的下一步2.改变默认路径,填写项目名称,可勾选将解决方案和项目......