[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

相关文章
|
3月前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
365 1
|
4月前
|
机器学习/深度学习 数据采集 数据挖掘
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
基于 GARCH -LSTM 模型的混合方法进行时间序列预测研究(Python代码实现)
161 2
|
3月前
|
人工智能 数据安全/隐私保护 异构计算
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
443 8
桌面版exe安装和Python命令行安装2种方法详细讲解图片去水印AI源码私有化部署Lama-Cleaner安装使用方法-优雅草卓伊凡
|
2月前
|
存储 Java 索引
(Python基础)新时代语言!一起学习Python吧!(二):字符编码由来;Python字符串、字符串格式化;list集合和tuple元组区别
字符编码 我们要清楚,计算机最开始的表达都是由二进制而来 我们要想通过二进制来表示我们熟知的字符看看以下的变化 例如: 1 的二进制编码为 0000 0001 我们通过A这个字符,让其在计算机内部存储(现如今,A 字符在地址通常表示为65) 现在拿A举例: 在计算机内部 A字符,它本身表示为 65这个数,在计算机底层会转为二进制码 也意味着A字符在底层表示为 1000001 通过这样的字符表示进行转换,逐步发展为拥有127个字符的编码存储到计算机中,这个编码表也被称为ASCII编码。 但随时代变迁,ASCII编码逐渐暴露短板,全球有上百种语言,光是ASCII编码并不能够满足需求
177 4
|
3月前
|
算法 调度 决策智能
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
【两阶段鲁棒优化】利用列-约束生成方法求解两阶段鲁棒优化问题(Python代码实现)
|
4月前
|
机器学习/深度学习 数据采集 TensorFlow
基于CNN-GRU-Attention混合神经网络的负荷预测方法(Python代码实现)
基于CNN-GRU-Attention混合神经网络的负荷预测方法(Python代码实现)
196 0
|
8月前
|
人工智能 Python
083_类_对象_成员方法_method_函数_function_isinstance
本内容主要讲解Python中的数据类型与面向对象基础。回顾了变量类型(如字符串`str`和整型`int`)及其相互转换,探讨了加法在不同类型中的表现。通过超市商品分类比喻,引出“类型”概念,并深入解析类(class)与对象(object)的关系,例如具体橘子是橘子类的实例。还介绍了`isinstance`函数判断类型、`type`与`help`探索类型属性,以及`str`和`int`的不同方法。最终总结类是抽象类型,对象是其实例,不同类型的对象有独特运算和方法,为后续学习埋下伏笔。
179 7
083_类_对象_成员方法_method_函数_function_isinstance
|
8月前
|
人工智能 Python
[oeasy]python083_类_对象_成员方法_method_函数_function_isinstance
本文介绍了Python中类、对象、成员方法及函数的概念。通过超市商品分类的例子,形象地解释了“类型”的概念,如整型(int)和字符串(str)是两种不同的数据类型。整型对象支持数字求和,字符串对象支持拼接。使用`isinstance`函数可以判断对象是否属于特定类型,例如判断变量是否为整型。此外,还探讨了面向对象编程(OOP)与面向过程编程的区别,并简要介绍了`type`和`help`函数的用法。最后总结指出,不同类型的对象有不同的运算和方法,如字符串有`find`和`index`方法,而整型没有。更多内容可参考文末提供的蓝桥、GitHub和Gitee链接。
220 11
|
JavaScript
箭头函数与普通函数(function)的区别
箭头函数是ES6引入的新特性,与传统函数相比,它有更简洁的语法,且没有自己的this、arguments、super或new.target绑定,而是继承自外层作用域。箭头函数不适用于构造函数,不能使用new关键字调用。

热门文章

最新文章

推荐镜像

更多