[oeasy]python088_列表_清空列表_clear

本文涉及的产品
应用实时监控服务-可观测链路OpenTelemetry版,每月50GB免费额度
注册配置 MSE Nacos/ZooKeeper,118元/月
云原生网关 MSE Higress,422元/月
简介: 本文介绍了Python中列表的清空方法`clear`。通过实例讲解了`clear`与将列表赋值为空列表的区别,前者会清空原列表内容,而后者创建新空列表,不影响原列表。文中以收银程序为例,展示了`clear`的实际应用场景,并通过地址观察解释了两者的机制差异。最后总结了相关术语如`list`、`append`、`clear`等,帮助理解列表操作及方法调用的概念。

列表_清空列表_clear

回忆

  • 上次了解了
  • append
  • 追加

  • 还有什么 方法呢?🤔

喊救命

list.
  • append之后是?

查看帮助

  • 后面是clear
help(list.clear)
  • 清空列表中所有列表项

  • 只有一个 参数是 self
  • self是什么?

self

  • self就是自己

  • 谁自己?

调用

  • 谁调用clear
  • 就是谁自己
  • 调用的 clear?
nlist = [0, 1, 2]
nlist.clear()
nlist

  • nlist 调用
  • 所以 self 就是 nlist对象自己

  • nlist被清空了
  • nlist 是 啥?

喊救命

  • 对着 nlist 喊 救命(help)
help(nlist)
  • nlist 是一个
  • 列表类 的 实例对象

  • 什么 是 列表类 呢??

汽车类

  • 先回忆 什么是 类?

  • 是一种 抽象的 数据类型
  • 比如说 汽车类(car class)
  • 这辆吉普车 是
  • 隶属于汽车类(car class)的
  • 实例对象 this_jeep
  • this_jeep 可以调用自己的成员方法
  • this_jeep.start_engine()
  • this_jeep.accelerate(speed)
  • this_jeep.brake()
  • this_jeep.turn(direction)

具体代码

  • 列表类 就是 一种抽象类型
  • 内建的 可变 序列
  • builtin mutable sequence
  • append 和 clear 都是 list类 的 成员方法
  • 都有self 作为第一个参数

  • append 和 clear
  • 都是 list这个列表类的 成员方法
  • member method
  • 通过 实例对象 来调用
  • append
  • name_list.append("o4z")
  • clear
  • name_list.clear()
  • .(点)的意思是里面的
  • 列表 为啥 要清空 ?

清空clear

  • disney 发布一个 周边
  • 引发 大量人 排队
  • 形成列表
  • 周边 卖没了
  • 后面的人 排队 也买不着了
  • 列表 只能 清空 了
people_list.clear()
  • clear 是
  • 可以清空列表
  • 是 list列表类的 成员方法

  • 可以有什么实际应用吗?

收银员累加程序

  • 我们想做一个收银员的程序

ai辅助

while True:
    numbers = []
    while True:
        num = input("请输入商品价格(输入end停止输入):")
        if num == "end":
            break
        try:
            num = float(num)
            numbers.append(num)
        except ValueError:
            print("输入不合法,请输入有效的浮点数或end。")
    total = sum(numbers)
    print(f"本次输入的数字总和为:{total}")
  • 这里面 每次重新 累加
  • 先将 空列表 赋给了 numbers

运行结果

  • 输入end进行求和
  • 输入ctrl+c结束程序

  • lst.clear()和 lst = [ ]
  • 有区别吗?

区别

  • 单个列表 看不出 区别
  • 两个列表 就有区别了
l1 = [0, 1, 2]
l2 = l1
l2.clear()
l1
l2
  • 首先定义 l1、l2是两个列表对象
  • 列表对象l1调用clear函数之后
  • l1、l2都清空了

另一种情况

l1 = [0, 1, 2]
l2 = l1
l2 = []
l1
l2
  • 还是这两个列表对象
  • 将空列表[ ] 赋给 l2
  • l1 不会受到影响

  • 为什么会不一样呢?

将l2清空

l1 = [1, 2, 3]
l2 = l1
l2.clear()
print(l1, l2)
  • 将l1赋给l2
  • 两个列表对象 引用着 同一地址

  • l2 清空就是
  • l1 清空

通过id观察

l1 = [1, 2, 3]
l2 = l1
id(l1), id(l2)
l2.clear()
id(l1), id(l2)
  • 这两个列表对象
  • 地址始终没有变化
  • 一直指向同一个位置

  • 所以清空一个
  • 另一个所指向的地址不变
  • 也清空了

将空列表赋给l2

  • 回到pythontutor
l1 = [1, 2, 3]
l2 = l1
l2 = []
print(l1, l2)
  • 将l1赋给l2
  • 两个列表对象指向同一地址

  • 将空列表[]赋给l2
  • l2 地址变了

  • l1 地址没变
  • 还是原来的

通过id观察

l1 = [0, 1, 2]
id(l1)
l2 = l1
id(l2)
l2 = []
id(l1), id(l2)
  • 通过id函数得到列表的地址

  • 将空列表赋给l2
  • 让l2指向一个空列表的地址
  • 是一个新地址
  • 和l1那个地址就没关系了

总结一下 新单词

单词 单词含义 描述
list 列表 内建可变序列
append 追加 list的方法
用于在列表的末尾添加一个元素
clear 清空 list 的方法
清空列表
function 函数 独立的代码块
可以直接调用
method 方法 与对象相关联的函数
需要通过对象来调用

总结

  • 这次了解了 list列表的 清空方法
  • clear
  • clear
  • 前面要有 对象名
  • .(点)的意思是 里面的
  • 可以把整个列表清空
  • 就像清空回收站

clist = list("oeasy")
clist
clist.clear()
  • 不想 清空
  • 定点删除 可以 吗?🤔
相关文章
|
28天前
|
人工智能 Python
[oeasy]python089_列表_删除列表项_remove_列表长度_len
本文介绍了Python列表(list)的操作方法,重点讲解了`remove`方法的使用。通过实例演示如何删除列表中的元素,探讨了`ValueError`异常产生的原因,并分析了时间复杂度O(n)的概念。同时提及了`clear`方法清空列表的功能及`len`函数获取列表长度的用法。最后以购物清单为例,展示列表的实际应用场景,并预告快速生成列表的方法将在后续内容中介绍。
128 62
|
24天前
|
人工智能 索引 Python
[oeasy]python091_列表_索引_index_中括号_索引函数
本文介绍了Python中列表与字符串的索引及index函数用法。通过range生成列表,使用索引[]访问和修改列表元素,index函数查找元素位置。字符串支持索引访问但不可直接修改。还探讨了16进制数在Python中的表示方法,以及日期、月份等特殊字符的Unicode范围。最后总结了列表与字符串操作的区别,并预告后续内容,提供蓝桥云课、GitHub和Gitee链接供进一步学习。
52 20
|
26天前
|
Python 容器
[oeasy]python090_列表_构造_范围_range_start_end_step_步长
本文介绍了Python中列表的生成方法,重点讲解了`range()`函数的使用。通过`range(start, stop, step)`可生成一系列整数,支持正负步长,但不支持小数参数。文章从基础的列表追加、直接赋值到复杂的应用场景(如生成等宽字体的月份列表),结合实例演示了`range()`的灵活性与实用性。最后总结了`range()`的关键特性:前闭后开、支持负数步长,并提供了进一步学习的资源链接。
74 15
|
1月前
|
Python
[oeasy]python086方法_method_函数_function_区别
本文详细解析了Python中方法(method)与函数(function)的区别。通过回顾列表操作如`append`,以及随机模块的使用,介绍了方法作为类的成员需要通过实例调用的特点。对比内建函数如`print`和`input`,它们无需对象即可直接调用。总结指出方法需基于对象调用且包含`self`参数,而函数独立存在无需`self`。最后提供了学习资源链接,方便进一步探索。
64 17
|
20天前
|
索引 Python
[oeasy]python092_eval_衡量_转化为列表
本文探讨了 Python 中 `eval` 函数的用法及其与字符串和列表之间的转换关系。通过实例分析,展示了如何使用 `eval` 将字符串转化为对应的数据类型,例如将表示列表的字符串转回列表。同时,文章深入讲解了 `eval` 的工作机制,包括根据本地和全局变量对字符串进行计算的能力。此外,还提醒了命名变量时需避免覆盖内置类名(如 `str`、`int`、`list`)的重要性,以免影响程序正常运行。最后,简要提及字符串和列表索引中负数的应用,并为读者提供了进一步学习的资源链接。
29 2
|
1月前
|
数据采集 搜索推荐 API
Python 原生爬虫教程:京东商品列表页面数据API
京东商品列表API是电商大数据分析的重要工具,支持开发者、商家和研究人员获取京东平台商品数据。通过关键词搜索、分类筛选、价格区间等条件,可返回多维度商品信息(如名称、价格、销量等),适用于市场调研与推荐系统开发。本文介绍其功能并提供Python请求示例。接口采用HTTP GET/POST方式,支持分页、排序等功能,满足多样化数据需求。
|
1月前
|
人工智能 Python
[oeasy]python083_类_对象_成员方法_method_函数_function_isinstance
本文介绍了Python中类、对象、成员方法及函数的概念。通过超市商品分类的例子,形象地解释了“类型”的概念,如整型(int)和字符串(str)是两种不同的数据类型。整型对象支持数字求和,字符串对象支持拼接。使用`isinstance`函数可以判断对象是否属于特定类型,例如判断变量是否为整型。此外,还探讨了面向对象编程(OOP)与面向过程编程的区别,并简要介绍了`type`和`help`函数的用法。最后总结指出,不同类型的对象有不同的运算和方法,如字符串有`find`和`index`方法,而整型没有。更多内容可参考文末提供的蓝桥、GitHub和Gitee链接。
59 11
|
2月前
|
存储 人工智能 索引
Python数据结构:列表、元组、字典、集合
Python 中的列表、元组、字典和集合是常用数据结构。列表(List)是有序可变集合,支持增删改查操作;元组(Tuple)与列表类似但不可变,适合存储固定数据;字典(Dictionary)以键值对形式存储,无序可变,便于快速查找和修改;集合(Set)为无序不重复集合,支持高效集合运算如并集、交集等。根据需求选择合适的数据结构,可提升代码效率与可读性。
|
3月前
|
安全 数据处理 索引
深入探讨 Python 列表与元组:操作技巧、性能特性与适用场景
Python 列表和元组是两种强大且常用的数据结构,各自具有独特的特性和适用场景。通过对它们的深入理解和熟练应用,可以显著提高编程效率和代码质量。无论是在数据处理、函数参数传递还是多线程环境中,合理选择和使用列表与元组都能够使得代码更加简洁、高效和安全。
91 9
|
9月前
|
存储 索引 Python
Python学习笔记----列表、元组和字典的基础操作
这篇文章是一份Python学习笔记,涵盖了列表、元组和字典的基础操作,包括它们的创建、修改、删除、内置函数和方法等。
Python学习笔记----列表、元组和字典的基础操作