当前位置: 首页 > news >正文

【Python知识点桂电版】02组合数据类型

一、序列

  1. 序列简介

序列是指一种包含多项数据的数据结构,分为不可变序列和可变序列。可变序列可修改序列内的元素如列表,二不可变序列一旦建立就不能修改其中的元素,字符串和元组属于不可变序列。

  1. 列表和元组的创建

列表:列表名 =[元素1,元素2,····]

元组:元组名=(元素1,元素2,····)

注:列表和元组中的数据类型可以不同。如 list1=[1,“hello”,[2,3]]

二、列表和元组的通用操作

  1. 索引

利用下标访问元素,列表名称[下标] 元组名称[下标]

  1. 切片

格式:[star:end:step]

star:切片开始的索引(默认从0开始)

end:切片结束的索引(不包含end)(默认序列长度)

step:步长,默认为1,步长为负数,表示从右向左切片


list1 = [1,2,3,4,5,6,7]
print(list1[1:5:])

运行结果:

  1. 查找和计数

查找list.index(x):x在列表list中第一次出现的位置,如果不存在,抛出异常

计数list.count(x):x在列表list中出现的次数

  1. 最大值最小值和长度

max(),min(),len():列表和元组的元素类型必须相同


list1 = [1, 2, 3, 4, 5, 6, 7, 8]
print(max(list1))
print(min(list1))
print(len(list1))

运行结果:

  1. 加法、乘法和in运算

list1+list2:结果是两个列表或元组所包含的元素的总和

list*n:表示对应的列表或元组重复n次

x in list:判断列表中是否存在x元素,存在返回Ture,否则返回Flase。


list1 = [1, 2, 3, 4, 5, 6, 7, 8]
list2 = [9, 10, 11]
print(list1+list2)
print(list2*2)
print(12 in list2)

运行结果:

  1. 序列封包和序列解包

序列封包:把多个值给一个变量时,Python将这些值封装成元组。如a=1,2,3

序列解包:把序列给多个变量,按持续搞,如a=1,2,3 d,e,f=a

三、列表

dir(list):可查看列表的方法

  1. 创建列表

list( )如:list1=list(range(1,10,2))

列表名= [ 元素····]

  1. 增加元素

append( ):在列表尾部追加一个元素

insert( ):在列表的指定位置插入

extend():将一个列表追加到列表尾部

  1. 删除元素

del( ):根据索引删除列表中的一个元素或一段区间中的元素

remove():根据元素本身删除列表中的某个元素

clear( ):清空列表中所有元素

  1. 置逆和排序

reverse():置逆

sort():排序,默认从小到大,如果从大到小,需要添加参数reverse = True

  1. 弹出元素

列表名.pop()

入栈可用appen()

  1. 深拷贝和浅拷贝

  1. 浅拷贝list.copy( ) copy.copy( )

实例2:

  1. 深拷贝copy.deepcopy( )

总的列表相关操作:

四、元组

元组是不可变序列。

  1. 元组的创建

元组名 = (元素1,元素2·····)若只有一个元素,则需要在元素后面加一个逗号

tuple()

  1. 列表和元组的转换

list()

tuple()

五、字典

  1. 创建字典

{key1:value1,key2:value2,key3:value····}:键是Python中任意不可变数据如整数、字符串,不能是列表等可变类型,“键”是唯一的,不允许重复,而“值”是可以重复的。

dict():内置函数,如dict1=dict([(one',1),('two',2),('three',3)])

方3:

  1. 访问元素

dict[键]:若存在则返回“值”,不存在则抛出异常

  1. 增加修改元素

d[key]=value:将key对应的值修改为value,key不存在添加新的kv对。

  1. 删除元素

del dict[key]:通过键来删除,若键值不存在则抛出异常。

字典名.popitem( ):返回并删除字典中的最后一对键和值。

字典名.pop(key):key存在就移除并返回它的value值,如果字典已经为空,就抛出异常。

可先用in判断“键”是否存在:

  1. get()和item()方法

get( ):返回指定“键”对应的“值”,并允许指定该键不存在时返回特定的“值”。

item( ): 返回字典的键、值对,用元组进行封装

  1. keys( )和value()方法

key():返回字典的键。

value():返回字典的值。

  1. fromkey()方法

dict.fromkeys(seq[ ,value]):用于创建新字典,value为字典所有键对应的初始值。

  1. 字典长度和检索

len(dict):返回键的数量。

key in dict:判断特定字符是否存在。

六、容器类

  1. deque类似列表的容量,实现在两端快速添加和弹出。

  1. rotate

http://www.lryc.cn/news/21630.html

相关文章:

  • LeetCode100_100. 相同的树
  • javaEE 初阶 — 网络层中 IP 协议 的报文结构
  • iOS swift UICollectionView
  • 计算机三级数据库 填空题汇总
  • 【Java学习】初识Java
  • LabVIEW网络服务安全
  • 基于MaixBit(K210芯片)的图像识别猜拳手势博弈装置
  • leetcode 41~50 学习经历
  • SQL注入原理及漏洞利用(入门级)
  • 2023/2/26 Vue学习笔记 配置代理解决跨域[CORS ]的问题
  • 算法练习--深拷贝与浅拷贝
  • Wireshark “偷窥”浏览器与服务器三次握手
  • 基于stm32温湿度采集平台开发
  • 单机模拟kafka分布式集群(演示生产、消费数据过程)
  • 办公室人员离岗识别检测系统 yolov7
  • Android从屏幕刷新到View的绘制(一)之 Window、WindowManager和WindowManagerService之间的关系
  • #多源数据融合#:HSI与Lidar
  • android 权限控制与进程隔离
  • 链表(一):移除链表元素、设计链表等力扣经典链表题目
  • 计算机网络 第4章 作业1
  • Redis-Java代码使用示例
  • acwing3485最大异或和(trie树,贪心)
  • EasyRecovery16免费的电脑的数据恢复工具
  • 银行数字化转型导师坚鹏:平安银行数字化转型—橙E网战略研究
  • tun驱动之open
  • 计算机网络体系结构
  • 基础夯实,字节内部总结240道算法LeetCode刷题笔记,直呼太全
  • Three.js使用WebWorker进行八叉树碰撞检测
  • 【教程】Notion笔记多平台设置中文显示
  • [牛客Hot101]链表篇