04-4数据类型-列表

概念:有序的可变的元素集合

列表的生成

  • 方式1:[元素1, 元素2…]
    • 例如: nums = [1,2,3,4,5]
  • 方式2:
    • 列表生成式
      - 语法:range(start, stop[, step])step默认值是1
      注意 为了防止生成的列表没有被使用,python3做了一些改变,不会立即生成列表
    • 列表推导式
      从一个list, 推导出另外一个list
      - 语法:[表达式 for 变量 in 列表]
      -------- [表达式 for 变量 in 列表 if 条件]
  • 列表的嵌套
    列表中的元素, 还可以是列表
    是否可以存放不同的数据类型

常用操作

append
作用:往列表中, 追加一个新的元素;在列表的最后
语法:l.append(object)
参数:object;想要添加的元素
返回值:None
注意 会直接修改原数组
insert
作用:往列表中, 追加一个新的元素;在指定索引前面
语法:l.insert(index, object)
参数:index;索引, 到时会插入到这个索引之前
object:想要添加的元素
返回值:None
注意 会直接修改原数组
extend
作用:往列表中, 扩展另外一个可迭代序列
语法:l.extend(iterable)
参数:iterable可迭代集合
返回值:None
注意 会直接修改原数组 和append之间的区别 extend可以算是两个集合的拼接 append是把一个元素, 追加到一个集合中
乘法运算
[“a”] * 3 = [‘a’, ‘a’, ‘a’]
加法运算
[“a”] + [“b”, “c”] =[“a”, “b”, “c”]
和extend区别 只能列表类型和列表类型相加

del 语句
作用:可以删除一个指定元素(对象)
语法:del 指定元素
注意 可以删除整个列表 删除一个变量 也可以删除某个元素
pop
作用:移除并返回列表中指定索引对应元素
语法:l.pop(index=-1)
参数:index;需要被删除返回的元素索引
默认是-1
也就对应着列表最后一个元素
返回值被删除的元素
注意 会直接修改原数组 注意索引越界
remove
作用:移除列表中指定元素
语法:l.remove(object)
参数:object;需要被删除的元素
返回值:None
注意 会直接修改原数组 如果元素不存在 会报错 若果存在多个元素 则只会删除最左边一个 注意循环内删除列表元素带来的坑

names[index] = 666

获取单个元素

items[index]
注意负索引

获取元素索引

index()

获取指定元素个数

count()

获取多个元素

切片:items[start?step]

遍历

  • 方式1:根据元素进行遍历
    for item in list:
    print(item)

  • 方式2:根据索引进行遍历
    for index in range(len(list)):
    print(index, list[index])

  • 方式3(了解)
    创建对应的枚举对象
    概念
    通过枚举函数, 生成的一个新的对象
    作用
    函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列
    同时列出数据下标和数据
    语法
    enumerate(sequence, [start=0])
    sequence – 一个序列、迭代器或其他支持迭代对象。
    start – 下标起始位置。

  • 方式4(了解)
    使用迭代器进行遍历
    iterL = iter(list)
    for item in iterL:
    print(item)

    额外操作

判定

元素 in 列表
元素 not in 列表

比较

比较运算符
==
>
<

针对每个元素, 从左到右逐一比较

排序

方式1:

  • 内建函数,可以对所有可迭代对象进行排序
    语法:sorted(itrearble, key=None, reverse=False)
    参数:itrearble,可迭代对象
    key:排序关键字
    reverse:控制升序降序
    默认False,升序
    返回值:一个已经排好序的列表

方式2:

  • 列表对象方法
    语法:list.sort(key=None, reverse=False)
    参数:key,排序关键字
    reverse:控制升序降序
    默认False,升序
乱序

可以随机打乱一个列表
导入random模块
import random
random.shuffle(list)

反转

l.reverse()
切片反转
l[::-1]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值