dom audio datagridview swiftui vue基础教程 后台模板下载 找公司做网站 jquery获取元素 leach算法 edate函数的使用方法 android入门实例 linux撤销 python3基础教程 python中str函数 python正则匹配 python命令行参数 如何配置python环境 java编程实例 java编程学习入门 java教材 java的date linux目录 linux的安装 sp5 网络适配器驱动 onenote2003 su版本转换器 vue上传文件 hexworkshop 英雄联盟体验服转换器 魔兽地图七个人 html5下载 VSPD js刷新当前页 js动态添加元素 jq循环 0000008e x270 进存销软件 u盘防复制
当前位置: 首页 > 学习教程  > python

Python自学5(类)

2021/2/8 12:15:04 文章标签: 测试文章如有侵权请发送至邮箱809451989@qq.com投诉后文章立即删除

" 孤独一人是很痛苦的、不被任何人需要是很痛苦的、我很明白这一点 " 定制一个模子—类1、类(class)2、类的定义3、类的实例化4、对象属性5、对象方法6、总结前言 Python 中内置有这么一个函数通过它可以查看变量或值的数据类型,它…

在这里插入图片描述
" 孤独一人是很痛苦的、不被任何人需要是很痛苦的、我很明白这一点 "

定制一个模子—类

  • 1、类(class)
  • 2、类的定义
  • 3、类的实例化
  • 4、对象属性
  • 5、对象方法
  • 6、总结

前言

  1. Python 中内置有这么一个函数
  2. 通过它可以查看变量或值的数据类型,它就是 type()
# 语法
type(变量或值)

print(type(100))
print(type("111"))
print(type([1,2,3]))
# output:<class 'int'>
#        <class 'str'>
#        <class 'list'>

1、类(class)

  1. class 是指面向对象编程范式中的一个概念——类
  2. Python 中的数据类型就是类、一个类对应一种数据类型
  3. 类的具体对象中可以保存若干数据、以及用于操作这些数据的若干函数
  4. 我们常用的字符串类型、就是名为 str 的类
  5. 一个 str 中可以保存若干字符、并且针对这些字符提供了一系列的操作函数
# 如 'hello' 就是一个 str 对象、我们可以把这个对象赋值给变量
a = "word"

# str 对象自带的 find() 函数
a = "word"
print(a.find("w"))
# output:0

# str 对象自带的 upper() 函数、可用于获取英文字符的大写形式
a = "word"
a.upper()
print(a)
# output:WORD

2、类的定义

  1. str、int、list 这样的类、是被预先定义好并且内置在 Python 中的
  2. 当然、我们也可以自己来定义类
# 语法
class 类名:
    代码块

%1 这里定义了一个非常简单的类、名为 A
# pass 是占位符、表示什么都不做或什么都没有
class A:
    pass

3、类的实例化

  1. 我们把类看作是自定义的数据类型、既然是类型
  2. 那么它只能用来表示数据的种类、不能直接用于保存数据
  3. 想要保存数据、就需要先创建一个属于这种类型的类似于容器的东西
  4. 这种容器就叫做对象(或称实例)
  5. 通过类产生对象的过程叫实例化
  6. 打个比方、类就相当于图纸、对象就相当于按照图纸所生产出来的产品
  7. 图纸能决定产品的内部构造以及所具有的功能
  8. 但图纸不能替代产品被直接使用
  9. 类能决定对象能保存什么样的数据、以及能拥有什么样的函数
  10. 但类不直接用来保存数据
# 语法
变量 = 类名()

%1
class A:
	pass
a = A()
# 类的实例化

print(type(a))
# output:<class '__main__.A'>(表示模块 __main__ 下的 A 类)

print(a)
# output:<__main__.A object at 0x000001DE2CDAEA58>(a 是 A 的对象,位于内存的 0x000001DE2CDAEA58 地址)

4、对象属性

  1. 和之前相比类的内部多了一个函数 __init __()
  2. __init __() 函数一方面可以接收要保存在对象中的数据
  3. 另一方面也可以在实例化类的时候做一些初始化工作
# 语法
class 类名:
    def __init__(self, 数据1, 数据2, ...):
        self.数据1 = 数据1
        self.数据2 = 数据2

%1
class Pair:
    def __init__(self, first, second):
        self.first = first
        self.second = second
# 它的 __init__() 函数有三个参数:
# 第一个是 self、它是类中函数默认的第一个参数、表示对象自身
# 我们可以将数据赋值给 self.数据名、这样数据就保存在对象中了
# first 是数据对的第一个值
# second 是数据对的第二个值

pair = Pair(10, 20)
# 实例化对象
# 这个过程中会自动调用 __init__() 函数
# 并将 10 传给了 first 参数、将 20 传给了 second 参数
# 而 __init__() 的第一个参数 self 是不需要传值的、Python 会自动填充这个参数

# 实例化之后我们可以通过 pair 对象来获取数据对中的数据
print(pair.first)
print(pair.second)
# output:10
#        20

5、对象方法

  1. 除了可以在类中定义了对象属性、也可以在类中定义一些函数
  2. 这样的函数可直接由对象调用
  3. 例如我们之前学过的 list1.append()(list1是list类实例化出的对象)
# 语法
class 类名:
    def 函数1(self, 参数1, 参数2)
# 定义对象方法时第一个参数默认使用 self、定义时必须有这个参数
# 但是调用时不必传递
# 之前介绍过的 __init__() 就是一个对象方法、不过是个特殊的对象方法

%1 在 Pair 类的基础上定义一个方法、功能是交换对象的 first 和 second 属性的值
class Pair:
    def __init__(self, first, second):
        self.first = first
        self.second = second
        
    def swap(self):
        self.first, self.second = self.second, self.first
pair = Pair(10, 20)
print(pair.first)
print(pair.second)
# output:10
#        20

pair.swap()
print(pair.first)
print(pair.second)
# output:20
#        10

6、总结

  • 定义类的方法
class 类名:
    代码块
  • 在类中定义方法
class 类名:
    def 方法(self, 参数1, ...):
        self.数据1 = 数据1
        ...
  • 可以在 __ init__ 方法中定义对象属性,之后在实例化类的时候传入数据
class Pair:
    def __init__(self, first, second):
        self.first = first
        self.second = second
        
pair = Pair(10, 20)

本文链接: http://www.dtmao.cc/news_show_2000317.shtml

附件下载

相关教程

    暂无相关的数据...

共有条评论 网友评论

验证码: 看不清楚?