Python必备基础(三):列表与元组(1)

首先列表与元组是高级数据类型,那什么是高级数据类型?其实高级数据类型的高级点在于能够表示复杂数据结构的数据类型,相比于基础数据类型(如整数、浮点数、布尔值等),高级数据类型可以存储和操作更多的数据,还提供了更丰富的功能和操作方法

列表与字典是灵魂数据类型,列表与字典就相当于屠龙刀、倚天剑;程序的核心是处理数据,处理数据的过程一定会介入高级数据类型;怎么展现出我们对python的掌握的程度呢,就是对数据类型的掌握,尤其是高级数据类型;

列表的概念

在Python中,列表(List)是一种有序、可变、可重复的数据结构,用于存储一组元素。

列表的特点

列表中的元素按照顺序进行存储和管理
元素可以是任意类型且可以不一致
元素的长度理论上没有限制
列表允许包含重复的元素
列表是可变数据类型

在这里插入图片描述

列表的基本操作

索引是管理列表的核心!
在这里插入图片描述

索引操作

使用索引查询

stars = ["杨紫","赵丽颖","白鹿","敖瑞鹏"]
print(stars[1])

在这里插入图片描述

使用索引修改数组

stars = ["杨紫","赵丽颖","白鹿","敖瑞鹏"]
stars[1] = "superZhao"
print(stars)

在这里插入图片描述

使用切片查询数组多个元素

stars = ["杨紫","赵丽颖","白鹿","敖瑞鹏"]
print(stars[1:3]) # ['赵丽颖', '白鹿']

在这里插入图片描述

使用切片修改数组多个元素

stars = ["杨紫","赵丽颖","白鹿","敖瑞鹏"]
stars[1:3] = ["super Zhao", "super Bai"]
print(stars) #['杨紫', 'super Zhao', 'super Bai', '敖瑞鹏']

在这里插入图片描述

判断成员是否存在

in 关键字检查某元素是否为序列的成员

stars = ["杨紫","赵丽颖","白鹿","敖瑞鹏"]
print("赵丽颖" in stars) # True
print("胡歌" in stars) # False

在这里插入图片描述

使用相加操作符"+",连接数组

这种方式连接后的数组,并不会去重

stars = ["杨紫","赵丽颖","白鹿","敖瑞鹏"]
stars2 = ["杨紫", "胡歌"]
print(stars + stars2) # ['杨紫', '赵丽颖', '白鹿', '敖瑞鹏', '杨紫', '胡歌']

在这里插入图片描述

循环列表:for item in list

stars = ["杨紫","赵丽颖","白鹿","敖瑞鹏"]
stars2 = ["杨紫", "胡歌"]
for name in stars:
    print(name)

在这里插入图片描述

计算元素个数:len()方法

stars = ["杨紫","赵丽颖","白鹿","敖瑞鹏"]
stars2 = ["杨紫", "胡歌"]
print(len(stars)) #4

在这里插入图片描述

把字符串转换为数组:list()

stars = "hello"
stars_list = list(stars)
print(stars_list) #['h', 'e', 'l', 'l', 'o']

内置方法

内置方法非常重要,是语言对数据类型做了支撑;
之前学过内置函数,一个函数就是一个功能代码块,比如print(),就是内置函数,一个名字代表一个功能,通过调用,完成功能的具体实现;
那什么是内置方法呢?内置函数直接调用就可以了,但是内置方法是有个依赖的,内置方法也是一个个函数,但是这些函数是放到一个类型下的,是有个归属的,归属数据对象(字符串对象,列表对象,字典对象);对象.方法()
我们知道对数据操作,无非就是增删改查;

append:追加元素,会经常使用,性能好,在保留位直接插入,所以在增加数据的时候优先使用此方法;

  • 向最后位置添加元素
  • 会修改原列表
  • 返回值:None(无返回值)
  • 在这里插入图片描述

insert :插入(不常用,插入一个值影响其他元素的位置,性能就变弱)

  • 会修改原列表
  • 返回值:None(无返回值)
stars = ["杨紫","赵丽颖","白鹿","敖瑞鹏"]
res = stars.insert(0,"胡歌")
print(res) # None
print(stars) # ['胡歌', '杨紫', '赵丽颖', '白鹿', '敖瑞鹏']

在这里插入图片描述

extend 在原列表扩展

  • 列表对象.extend(列表对象)
    
  • 返回值:None(无返回值)
    
  • 会修改原列表
    
  • 与“+”的区别,“+”号返回新列表,extend会影响原列表;
    
  • 如果不想修改原列表,就使用+
    
  • 实际情况extend要用的多
    

在这里插入图片描述

pop(index) 按索引删除

  • 列表对象.pop(index)
  • 不传参数,默认会删除最后一个
  • 会修改原列表
  • 返回值:被删除对象
    在这里插入图片描述

remove 按内容删

  • 列表对象.pop(内容)
  • 返回值:None(无返回值)
    在这里插入图片描述

clear 清空列表

  • 列表对象.clear()
  • python有个命令删除: del 列表对象 =》 会直接把列表对象整个删除,从内存中清空
    在这里插入图片描述

改:下面的方法都会改变原列表

使用索引(上面已讲)

切片(上面已讲)

使用索引(上面已讲)

切片(上面已讲)

其他方法

sort:对元素大小排序

  • 列表对象.sort()
  • 默认从小到大
  • 会修改原列表
  • 返回值:None(无返回值)
    在这里插入图片描述

reverse: 翻转

  • 列表对象.reverse()
  • 和列表对象[::-1]效果一样,计算出一个新翻转列表,reverse会改变原有值
  • 会修改原列表
  • 返回值:None(无返回值)
  • 先用sort排序,再用reverse翻转,会实现从高到低的效果

sorted() 最常用,可以代替sort,reverse

index(): 查询某元素的索引值

count(): 计算某元素出现的个数

内容太多了,下篇讲列表深浅拷贝、列表推导式和元组

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值