[oeasy]python086方法_method_函数_function_区别

简介: 本文详细解析了Python中方法(method)与函数(function)的区别。通过回顾列表操作如`append`,以及随机模块的使用,介绍了方法作为类的成员需要通过实例调用的特点。对比内建函数如`print`和`input`,它们无需对象即可直接调用。总结指出方法需基于对象调用且包含`self`参数,而函数独立存在无需`self`。最后提供了学习资源链接,方便进一步探索。

[oeasy]python086方法_method_函数_function_区别

回忆

  • 上次了解了 list 列表的操作
  • 追加列表项 append
  • 在列表的结尾处 追加列表项

  • lst.append
  • lst 是 list类 的 实例对象
  • append 是具体的方法
  • 中间(.) 点 的意思 是 里面的
  • 就像time.asctime()
  • 我们还学过什么模块来着?🤔

随机方法

  • 随机模块

  • 以前玩过的 验证码
import random
help(random)
  • Random 是 一个类

  • randint是 怎么 调用的呢?

具体方法

random.randint
  • random.randint其实是
  • Random类 对象的
  • 成员(member)方法(method)

  • 能直接查看
  • randint方法的 手册 吗?

帮助手册

help(random.randint)
  • 对着方法 喊救命

  • 我们回到
  • 列表类 的
  • 实例对象
  • instance object

实例里面的方法

help(name_list)
  • 进入 list类的 帮助文档

  • 这里面 列出了 list类所有的方法

翻页

  • ctrl + f
  • forward 向前翻页
  • 找到append

  • name_list.append
  • name_list 是
  • list类 的实例对象
  • .(点) 是 里面的
  • append 是 list类的成员方法
  • 如何快速查找到 append方法的 帮助 呢??🤔

帮助手册

  • 先q退回到游乐场
help(list)
  • 重复之前的方式 查看手册

  • 帮助说以下的
  • 都是方法(method)
  • 传统方法是 ctrl + f往下翻
  • 可以在list类的帮助里面
  • 快速定位 到append 吗?

帮助手册

  • 先q退回到游乐场
help(list)
  • help(list)
  • /append
  • 在帮助中查找append
  • 可以直接定位到append的帮助

  • n 找到一个 append
  • N 找到一个 append

仔细观察

  • append 成员方法
  • 是 list列表类的 成员方法

  • 用法 类似于 函数
  • 但属于 是类的成员方法
  • 作用是 在列表尾部 追加元素
  • 两个参数
  1. 第一个 是 对象实例自身 self
  2. 第二个 是 被追加的元素对象
  • 还可以更快、更明确吗?
  • 先按q 退出帮助
  • 回到 游乐场

直接找到

  • 查找类的方法
help(list.append)
  • 查询结果

  • 可以根据list的实例对象
  • 来查方法的帮助吗?

尝试

  • 查找实例的方法
help(lst.append)
  • 都可以找到append的帮助手册

  • 但这种情况是没有self的
  • 因为self已经明确为lst对象了
  • append 方法 前面必须得有对象吗?

尝试

append
  • append
  • 直接用根本就不认识

  • 函数 和 方法
  • 有什么相同吗?

相同之处

  • 成员方法(method) 和 内建函数(function) 很像
  1. 都有括号
  2. 括号里 都有参数
  3. 都会执行 设计好的 代码

  • 既然有了函数
  • 为什么还要 方法呢?

分别调用

  • 下面有 两个 列表对象
  1. 名单 name_list
  2. 数字列表 num_list
honglou_list = ["贾宝玉", "林黛玉", "薛宝钗", "史湘云", "晴雯"]
sanguo_list = ["刘备","关羽","张飞","赵云"]
honglou_list.append("刘姥姥")
sanguo_list.append("诸葛亮")
honglou_list
sanguo_list
  • 两个 列表 对象
  • 分别 追加自己的 列表项
  • 互不影响

  • 根据 这个特性 可以做点好玩的吗?

废话生成器

现代诗歌

  • 找到诗人的常用词汇
  • 分门别类 建立 列表
  • 开始作诗

  • 列表对象 各调各的append方法
  • 这和 函数 有什么不同吗?

不同

  • print函数
  • 没有self作为第一个参数的

  • 为啥 函数function
  • 就没有self呢?

函数

  • print函数 直接 自己就能用
  • 不需要 被所有者 调用
  • input 也是
  • 没有 self这个参数
  • 自己就能运行

  • 这说明什么?

内建函数

  • 内建函数

  • 其实 function前面
  • 有一个定语
  • built-in
  • 内建的

  • 这些函数
  • 直接建立 在 python 里面
  • 独立存在
  • 不需要任何的类
  • 不需要任何对象
  • 函数都这样吗?

ord函数

help(ord)
  • 没有self

  • 还有他的逆函数
help(chr)
  • 同样没有self

区分

  • locals 就是
  • 内建的 built-in 的函数(function)
  • 不需要任何类或者对象来调用
  • 直接写就行

  • append
  • 不是 内建的函数
  • 需要有个 self 进行调用

总结

  • 这次了解了 方法 和 函数的 不同之处
方法(method) 函数(function)
需要对象调用 无需对象调用
根据 对象名字 调用 无需名字 直接调用
基于类的对象 独立的
需要self 不需要self

相关文章
|
10月前
|
人工智能 Python
[oeasy]python089_列表_删除列表项_remove_列表长度_len
本文介绍了Python列表(list)的操作方法,重点讲解了`remove`方法的使用。通过实例演示如何删除列表中的元素,探讨了`ValueError`异常产生的原因,并分析了时间复杂度O(n)的概念。同时提及了`clear`方法清空列表的功能及`len`函数获取列表长度的用法。最后以购物清单为例,展示列表的实际应用场景,并预告快速生成列表的方法将在后续内容中介绍。
308 62
|
9月前
|
存储 索引 Python
[oeasy]python093_find方法_指数为负数_index_实际效果
本文介绍了Python中`find`方法与索引(index)的使用,包括负数索引的实际效果。回顾了`eval`函数的应用,并强调类名如`str`、`int`、`list`不可用作变量名以避免覆盖。通过示例解析了负数索引在字符串和列表中的作用,以及`index`方法的三个参数(value、start、stop)的用法。同时对比了`index`和`find`方法的区别:`index`找不到子串时抛出`ValueError`,而`find`返回-1。最后总结了正负索引的使用场景及两者的特性,提供了相关学习资源链接。
476 8
|
10月前
|
人工智能 索引 Python
[oeasy]python091_列表_索引_index_中括号_索引函数
本文介绍了Python中列表与字符串的索引及index函数用法。通过range生成列表,使用索引[]访问和修改列表元素,index函数查找元素位置。字符串支持索引访问但不可直接修改。还探讨了16进制数在Python中的表示方法,以及日期、月份等特殊字符的Unicode范围。最后总结了列表与字符串操作的区别,并预告后续内容,提供蓝桥云课、GitHub和Gitee链接供进一步学习。
264 20
|
10月前
|
Python 容器
[oeasy]python090_列表_构造_范围_range_start_end_step_步长
本文介绍了Python中列表的生成方法,重点讲解了`range()`函数的使用。通过`range(start, stop, step)`可生成一系列整数,支持正负步长,但不支持小数参数。文章从基础的列表追加、直接赋值到复杂的应用场景(如生成等宽字体的月份列表),结合实例演示了`range()`的灵活性与实用性。最后总结了`range()`的关键特性:前闭后开、支持负数步长,并提供了进一步学习的资源链接。
320 12
|
10月前
|
索引 Python
[oeasy]python092_eval_衡量_转化为列表
本文探讨了 Python 中 `eval` 函数的用法及其与字符串和列表之间的转换关系。通过实例分析,展示了如何使用 `eval` 将字符串转化为对应的数据类型,例如将表示列表的字符串转回列表。同时,文章深入讲解了 `eval` 的工作机制,包括根据本地和全局变量对字符串进行计算的能力。此外,还提醒了命名变量时需避免覆盖内置类名(如 `str`、`int`、`list`)的重要性,以免影响程序正常运行。最后,简要提及字符串和列表索引中负数的应用,并为读者提供了进一步学习的资源链接。
229 2
|
10月前
|
人工智能 Python
[oeasy]python088_列表_清空列表_clear
本文介绍了Python中列表的清空方法`clear`。通过实例讲解了`clear`与将列表赋值为空列表的区别,前者会清空原列表内容,而后者创建新空列表,不影响原列表。文中以收银程序为例,展示了`clear`的实际应用场景,并通过地址观察解释了两者的机制差异。最后总结了相关术语如`list`、`append`、`clear`等,帮助理解列表操作及方法调用的概念。
259 5
|
5月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
472 102
|
5月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
394 104
|
5月前
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
304 103

热门文章

最新文章

推荐镜像

更多