[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

相关文章
|
24天前
|
机器学习/深度学习 数据可视化 算法
Python数值方法在工程和科学问题解决中的应用
本文探讨了Python数值方法在工程和科学领域的广泛应用。首先介绍了数值计算的基本概念及Python的优势,如易学易用、丰富的库支持和跨平台性。接着分析了Python在有限元分析、信号处理、优化问题求解和控制系统设计等工程问题中的应用,以及在数据分析、机器学习、模拟建模和深度学习等科学问题中的实践。通过具体案例,展示了Python解决实际问题的能力,最后总结展望了Python在未来工程和科学研究中的发展潜力。
|
25天前
|
人工智能 索引 Python
[oeasy]python091_列表_索引_index_中括号_索引函数
本文介绍了Python中列表与字符串的索引及index函数用法。通过range生成列表,使用索引[]访问和修改列表元素,index函数查找元素位置。字符串支持索引访问但不可直接修改。还探讨了16进制数在Python中的表示方法,以及日期、月份等特殊字符的Unicode范围。最后总结了列表与字符串操作的区别,并预告后续内容,提供蓝桥云课、GitHub和Gitee链接供进一步学习。
52 20
|
1月前
|
Python
解决Python报错:DataFrame对象没有concat属性的多种方法(解决方案汇总)
总的来说,解决“DataFrame对象没有concat属性”的错误的关键是理解concat函数应该如何正确使用,以及Pandas库提供了哪些其他的数据连接方法。希望这些方法能帮助你解决问题。记住,编程就像是解谜游戏,每一个错误都是一个谜题,解决它们需要耐心和细心。
75 15
|
1月前
|
存储 缓存 文件存储
uv安装python及其依赖的加速方法
国内在使用uv的时候,可能会涉及到装python的速度太慢的问题,为了解决这个问题,可以使用`UV_PYTHON_INSTALL_MIRROR`这个环境变量。除此以外,对于多人协作场景,`UV_CACHE_DIR`也是一个有用的环境变量。本文会介绍这两个变量。
637 10
|
12天前
|
Python
Python 中__new__方法详解及使用
`__new__` 是 Python 中的一个特殊方法,用于控制对象的创建过程,在 `__init__` 之前执行。它是类的静态方法,负责返回一个实例。如果 `__new__` 不返回对象,`__init__` 将不会被调用。本文详细介绍了 `__new__` 的作用、特性及与 `__init__` 的区别,并通过实例演示了其在单例模式中的应用,同时对比了 Python2 和 Python3 中的写法差异。
|
25天前
|
开发框架 Java .NET
Python中main函数:代码结构的基石
在Python中,`main`函数是程序结构化和模块化的重要组成部分。它实现了脚本执行与模块导入的分离,避免全局作用域污染并提升代码复用性。其核心作用包括:标准化程序入口、保障模块复用及支持测试驱动开发(TDD)。根据项目复杂度,`main`函数有基础版、函数封装版、参数解析版和类封装版四种典型写法。 与其他语言相比,Python的`main`机制更灵活,支持同一文件作为脚本运行或模块导入。进阶技巧涵盖多文件项目管理、命令行参数处理、环境变量配置及日志集成等。此外,还需注意常见错误如全局变量污染和循环导入,并通过延迟加载、多进程支持和类型提示优化性能。
90 0
|
9月前
|
SQL JSON C语言
Python中字符串的三种定义方法
Python中字符串的三种定义方法
273 2
|
11月前
|
Python
python之字符串定义、切片、连接、重复、遍历、字符串方法
python之字符串定义、切片、连接、重复、遍历、字符串方法
python之字符串定义、切片、连接、重复、遍历、字符串方法
28.从入门到精通:Python3 面向对象 面向对象技术简介 类定义 类对象 类的方法
28.从入门到精通:Python3 面向对象 面向对象技术简介 类定义 类对象 类的方法
|
Python
Python面向对象、类的抽象、类的定义、类名遵循大驼峰的命名规范创建对象、类外部添加和获取对象属性、类内部操作属性魔法方法__init__()__str__()__del__()__repr__()
面向对象和面向过程,是两种编程思想. 编程思想是指对待同一个问题,解决问题的套路方式.面向过程: 注重的过程,实现的细节.亲力亲为.面向对象: 关注的是结果, 偷懒.类和对象,是面向对象中非常重要的两个概念object 是所有的类基类,即最初始的类class 类名(object): 类中的代码PEP8代码规范:类定义的前后,需要两个空行 创建的对象地址值都不一样如dog和dog1的地址就不一样,dog的地址为2378043254528dog1的地址为2378044849840 8.类内部操作属性 sel
323 1
Python面向对象、类的抽象、类的定义、类名遵循大驼峰的命名规范创建对象、类外部添加和获取对象属性、类内部操作属性魔法方法__init__()__str__()__del__()__repr__()

热门文章

最新文章