Python创建类的方法和成员访问的实现方法

发布时间:2021-06-24 13:47:36 作者:chen
来源:亿速云 阅读:339

本篇内容介绍了“Python创建类的方法和成员访问的实现方法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

一、创建类的方法与成员访问

1.1 创建实例方法并访问

实例方法是指在类中定义的函数。该函数是一种在类的实例上操作的函数。
同__init__()方法一样,实例方法的第一个参数必须是self,并且必须包含一个self参数。

Python创建类的方法和成员访问的实现方法

1.2 创建数据成员(属性)并访问

数据成员是指在类中定义的变量,即属性(对象的特征)。根据定义位置,属性(成员变量)
有两种:一种是实例属性,另一种是类属性(类变量)。

Python创建类的方法和成员访问的实现方法

1.2.1 添加与访问方式

类属性的添加与访问方式同对象属性,只是把self关键字换成类名

1.2.1.1 类外面添加对象属性

Python创建类的方法和成员访问的实现方法

class Information(object):
    def __init__(self, name, age):
        self.name = name
        self.age = age


info = Information('杜甫', 20)
info.sex = '男'
1.2.1.2 类外面获取对象属性

对象名.属性名

print(info.sex)

Python创建类的方法和成员访问的实现方法

1.2.1.3 类里面获取对象属性

Python创建类的方法和成员访问的实现方法

1.3 访问限制:私有成员与公有成员

类中定义的属性和方法默认为公有属性和方法,该类的对象可以任意访问类的公有成员。

为了契合封装原则,保证类中的代码不被外部代码轻易访问。 Python支持将类中的成员设
置为私有成员,在一定程度上限制对象对类成员的访问。
1.3.1 定义私有成员

对象无法直接访问私有成员

Python创建类的方法和成员访问的实现方法

1.3.2 访问私有属性
私有属性可在公有方法中通过指代对象本身的默认参数“self”访问,
类外部可通过公有方法间接获取类的私有属性。

Python创建类的方法和成员访问的实现方法

1.3.3 访问私有方法

私有方法同样在公有方法中通过参数“self”访问。

Python创建类的方法和成员访问的实现方法

1.4 类代码块

Class语句和for、while语句一样,都是代码块,即定义类就是执行代码块。

class myClass:
    print("This is my class")

执行上述代码后,会输出“class block”。

Python创建类的方法和成员访问的实现方法

1.5 类方法

1.5.1 类方法

Python创建类的方法和成员访问的实现方法
Python创建类的方法和成员访问的实现方法

1.5.2 修改类属性

在实例方法中无法修改类属性的值,但在类方法中可以修改类属性的值。

Python创建类的方法和成员访问的实现方法

1.5.3 综合示例
class myClass:
    # 类属性
    msg = '我是类的属性'

    # 此注解表示该方法是一个类方法
    @classmethod
    # cls代表当前这个类本身
    def showMsg(cls):
        # 改变类属性的值
        cls.msg = 'really'
        print(cls.msg)


# 调用类方法
myClass.showMsg()

Python创建类的方法和成员访问的实现方法

1.6 类方法和实例方法的区别

Python创建类的方法和成员访问的实现方法

1.7 静态方法

可有对象调用也可以有类调用

示例:定义一个包含属性num与静态方法static_method()的类Example。

class Example:
    num = 10

    @staticmethod
    def static_method():
        print(f"类属性的值为: {Example.num}")
        print("静态方法")


ex = Example()
ex.static_method()
print('-----------')
Example.static_method()

Python创建类的方法和成员访问的实现方法

“Python创建类的方法和成员访问的实现方法”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

推荐阅读:
  1. ​类的特殊成员方法
  2. 对象中成员的访问和私有成员的访问

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

python

上一篇:asp.net core使用tensorflowjs实现face recognition的方法

下一篇:C/C++常用的排序算法有哪些

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》