当前位置: 首页 > 问答 > Python编程 > 问答详情

python属性和方法的区别是什么

09月28日 06:02167人阅读
付老师 Python编程

对象的创建

创建对象的过程称之为实例化;当一个对象被创建后,包含三个方面的特性:对象句柄、属性和方法。

句柄用于区分不同的对象

对象的属性和方法与类中的成员变量和成员函数对应

obj=MyClass() //创建类的一个实例(对象)通过对象来调用方法和属性

类的属性

类的属性按使用范围:公有属性和私有属性,

类的属性范围取决于属性的名称。

公有属性:在类中和类外都能调用属性。

私有属性:不能在类外及被类意外的函数调用。

定义方式:以“_”双下划线开始的成员变量就是私有属性

私有属性,可以通过instance._classname_attribute方式访问。

内置属性:有系统在定义类的时候默认添加的,由前后双下划线构成,dict,module.

#!/usr/bin/env python
#-*-coding:utf-8-*-
#@Time   : 2018/1/11 15:48
#!@Auther:bestsky
#!@File  :demon1-class attributes.py
class People(object):
    color = "yellow"
    __age = 30  #私有属性
    def think(self):
        self.color = "black"
        print ("I am a %s" %self.color)
        # print self.__age
ren = People()
print ren
print ren.color
ren.think()

print ren._People__age  #私有属性调用方法,建议:仅程序测试使用

python学习网,免费的python学习网站,欢迎在线学习!

类的方法

方法的定义和函数一样,但是需要self作为第一个参数

类的方法为:

公有方法

公有方法:在类中和类外都能调用的方法

私有方法

私有方法:不能被类外部调用,在方法前面加上“__“双下划线就是私有方法;

类方法

类方法:被classmethod()函数处理过的函数,能被类所调用,也能被对象所调用(是继承的关系)

静态方法

静态方法:相当于“全局函数”,可以被类直接调用,可以被所有实例化对象共享,通过staticmethod()定义, 静态方法没有“self”参数。

self参数

用于区分函数和类的方法(必须有一个self),self参数表示执行对象本身。

职业技能申请领取
您的姓名
您的电话
意向课程
点击领取

环球青藤

官方QQ

扫描上方二维码或点击一键加群,免费领取大礼包,加群暗号:青藤。 一键加群

问答来自

付老师 Python编程
好评率85% 浏览167

相关问题

python中字典如何按照value排序?
付老师 Python编程
python中如何用sort方法实现对列表的排序?
付老师 Python编程
python编程有哪些开发软件?
张老师 Python编程
课程咨询 学员服务 公众号

扫描关注微信公众号

APP

扫描下载APP

返回顶部