083_类_对象_成员方法_method_函数_function_isinstance

本文涉及的产品
可观测可视化 Grafana 版,10个用户账号 1个月
Serverless 应用引擎免费试用套餐包,4320000 CU,有效期3个月
注册配置 MSE Nacos/ZooKeeper,182元/月
简介: 本内容主要讲解Python中的数据类型与面向对象基础。回顾了变量类型(如字符串`str`和整型`int`)及其相互转换,探讨了加法在不同类型中的表现。通过超市商品分类比喻,引出“类型”概念,并深入解析类(class)与对象(object)的关系,例如具体橘子是橘子类的实例。还介绍了`isinstance`函数判断类型、`type`与`help`探索类型属性,以及`str`和`int`的不同方法。最终总结类是抽象类型,对象是其实例,不同类型的对象有独特运算和方法,为后续学习埋下伏笔。

show: step
version: 1.0

enable_checker: true

列表 - 类型

回忆

  • 上章节 实验内容 比较

    • 捕获异常
    • 进制转化
    • 变量类型
    • 类型转化
  • 变量类型 主要有

    • 字符串 str
    • 整型数字 int
    • 彼此可以相互转化的
  • 加法

    • 会根据 变量类型的不同 而不同
      • 整型的 加 是 数字求和
      • 字符串 加 是 字符串拼接

图片描述

  • 除了这两种类型之外
    • python还有数据类型呢???🤔

分类

  • 首先 得 明确

图片描述

  • 什么 是 类型 呢?

分类

  • 比如 超市里
    • 商品 需要分 类型

图片描述

  • 超市的产品 是 分好类型
    • 粮油区 放 粮油产品
    • 杂粮区 放 杂粮产品
    • 玩具区 放 玩具产品
  • 具体到 某个区域

水果区

  • 水果区放各种水果
    • 香蕉区 放 香蕉类(banana class)
    • 苹果区 放 苹果类(apple class)
    • 橘子区 放 橘子类(orange class)
    • 合并 同

图片描述

  • 橘子类型 和 这个橘子
    • 什么关系 呢?

具体的橘子

  • 具体的橘子
    • 是橘子类(orange class)的
      • 一个实例对象
      • instance object

图片描述

  • 另一个具体的橘子
    • 也是橘子类(orange class)的
      • 另一个实例对象
      • instance object

汽车

图片描述

  • 汽车
    • 是一个抽象的
      • 类型
      • class

图片描述

  • 这辆吉普车

    • 是隶属于汽车类(car class)的
    • 一个 实例对象
    • instance object
  • 先来 看看 python 里面的

    • 类和对象

整型类

i = 3 
type(i)
  • int
    • 就是 整数类型
    • class int
    • int类

图片描述

  • i、 j
    • 是同类
    • 都是 int类的 实例对象
  • int类 是什么意思?

喊救命

help(int)
  • int 这个 class 的帮助手册

图片描述

  • python如何理解class呢?

class

图片描述

  • 类 是
    • 一种 特殊的 对象类型
    • 通过 类的语句 描述出来
    • 可以用来产生 实例
    • 里面封装了 数据和方法
  • 怎么判断 对象是否是 int类型呢?

询问ai

图片描述

isinstance

isinstance
  • 这是个内建的函数

图片描述

  • 函数啥意思?
help(isinstance)
  • 返回的是一个判断
    • 对象是否属于某个类型

图片描述

  • 两个参数
    1. 对象

具体试试

isinstance(5,int)
isinstance(6,int)
  • 这两个 都是int类的 数字

图片描述

  • "oeasy" 是不是数字呢?
isinstance("oeasy", int)
  • 结果

图片描述

  • 如果 参数 是 整型变量呢?

变量

i = 7
isinstance(7, int)
  • i这个变量
    • 是int类型的

图片描述

  • 这样 基于对象 编程的方法
    • 有名字吗?

面向对象

  • 面向对象编程
    • Object Oriented Programming

图片描述

  • 和 面向过程编程 相对
    • Procedure Oriented

图片描述

  • 除了 int类对象 之外
    • 还有 啥类型的对象?

字符串类

  • str 就是
    • 字符串类型
    • class str

图片描述

  • s1、s2是str类的
    • 实例对象
    • instance object

类型明确

  • int和str
    • 是两种完全不同的类型

图片描述

  • 泾渭分明

  • "abc" 是 str类的实例

    • 那这个str本身 是什么类型呢?

探究

type("abc")
type(str)
  • 层层追问

图片描述

  • str 是 类型 是 类型类
    • 真的很抽象

继续追问

type(type)
  • type是什么类型的

图片描述

  • type是 类型的类型
    • 还是 类型

type

help(type)
  • type 应该是一个
    • 元类型

图片描述

  • 是整个编程的基础
    • str类 和 int类 具体有啥不同呢?

查询帮助

help(str)
  • class str 的 帮助手册

图片描述

  • 在str封装了一些方法
    • find
    • index
  • 这些方法 int类 对象有吗?

尝试

  • 结果

图片描述

  • index
    • 只有 str类对象 能用
    • int类对象 不能用

总结🤔

  • 这次理解了
    • 类 与 对象
  • 类 class
    • 是 抽象的 数据类型
  • 对象 object
    • 是 某个类的 实例对象
    • instance object
  • 不同类型的对象
    • 有不同的运算和方法

图片描述

  • 还有没有 其他变量类型呢 ?
  • 下次再说 👋
相关文章
|
5月前
|
Python
[oeasy]python086方法_method_函数_function_区别
本文详细解析了Python中方法(method)与函数(function)的区别。通过回顾列表操作如`append`,以及随机模块的使用,介绍了方法作为类的成员需要通过实例调用的特点。对比内建函数如`print`和`input`,它们无需对象即可直接调用。总结指出方法需基于对象调用且包含`self`参数,而函数独立存在无需`self`。最后提供了学习资源链接,方便进一步探索。
110 17
|
5月前
|
人工智能 Python
[oeasy]python083_类_对象_成员方法_method_函数_function_isinstance
本文介绍了Python中类、对象、成员方法及函数的概念。通过超市商品分类的例子,形象地解释了“类型”的概念,如整型(int)和字符串(str)是两种不同的数据类型。整型对象支持数字求和,字符串对象支持拼接。使用`isinstance`函数可以判断对象是否属于特定类型,例如判断变量是否为整型。此外,还探讨了面向对象编程(OOP)与面向过程编程的区别,并简要介绍了`type`和`help`函数的用法。最后总结指出,不同类型的对象有不同的运算和方法,如字符串有`find`和`index`方法,而整型没有。更多内容可参考文末提供的蓝桥、GitHub和Gitee链接。
111 11
|
10月前
|
中间件 Docker Python
【Azure Function】FTP上传了Python Function文件后,无法在门户页面加载函数的问题
通过FTP上传Python Function至Azure云后,出现函数列表无法加载的问题。经排查,发现是由于`requirements.txt`中的依赖包未被正确安装。解决方法为:在本地安装依赖包到`.python_packages/lib/site-packages`目录,再将该目录内容上传至云上的`wwwroot`目录,并重启应用。最终成功加载函数列表。
105 0
|
11月前
|
JavaScript
箭头函数与普通函数(function)的区别
箭头函数是ES6引入的新语法,相比传统函数表达式更简洁,且没有自己的this、arguments、super或new.target绑定,而是继承自外层作用域。这使得箭头函数在处理回调和闭包时更加灵活方便。
|
11月前
|
JavaScript
箭头函数与普通函数(function)的区别
箭头函数是ES6引入的新特性,与传统函数相比,它有更简洁的语法,且没有自己的this、arguments、super或new.target绑定,而是继承自外层作用域。箭头函数不适用于构造函数,不能使用new关键字调用。
|
11月前
|
数据可视化 开发者 索引
详解Wireshark LUA插件函数:function p_myproto.dissector(buffer, pinfo, tree)
在 Wireshark 中,LUA 插件通过 `function p_myproto.dissector(buffer, pinfo, tree)` 扩展协议解析能力,解析自定义应用层协议。参数 `buffer` 是 `PacketBuffer` 类型,表示原始数据包内容;`pinfo` 是 `ProtoInfo` 类型,包含数据包元信息(如 IP 地址、协议类型等);`tree` 是
462 1
|
11月前
|
C++ 容器
函数对象包装器function和bind机制
函数对象包装器function和bind机制
82 0
【Azure Durable Function】PowerShell Activity 函数遇见 Newtonsoft.Json.JsonReaderException: The reader's MaxDepth of 64 has been exceeded.
【Azure Durable Function】PowerShell Activity 函数遇见 Newtonsoft.Json.JsonReaderException: The reader's MaxDepth of 64 has been exceeded.
|
安全 JavaScript 应用服务中间件
【Azure Function App】如何修改Azure函数应用的默认页面呢?
【Azure Function App】如何修改Azure函数应用的默认页面呢?
|
C# C++ Python
【Azure 应用服务】Azure Durable Function(持久函数)在执行Activity Function时候,因为调用函数名称错误而导致长时间无响应问题
【Azure 应用服务】Azure Durable Function(持久函数)在执行Activity Function时候,因为调用函数名称错误而导致长时间无响应问题