python面向对象:属性、方法、python内置类属性

1、属性:类内函数内的变量;

class File():

    def __init__(self,name):

        self.name =name

#name 为类File属性


        私有与公有属性:

class Worker:

    name ='李狗蛋'                  #公有

    __salary = 90000                #私有

    def describe_user(self):

        print(self.name)

        print(self.__age)

obj = Worker()

obj.describe_user()


输出:李狗蛋

    Traceback (most recent call last):

    File "D:\pythonProject1\面向对象\类与对象.py", line 242, in <module>

    obj.describe_user()

    File "D:\pythonProject1\面向对象\类与对象.py", line 240, in describe_user

    print(self.__salary)

AttributeError: 'User' object has no attribute '_User__salary'

#查看私有:
class Worker:
    name ='李狗蛋'

    __salary = 90000

    def describe_user(self):

        print(self.name)

obj = Worker()

obj.describe_Worker()

print(obj._Worker__salary)      #( 对象名._类名__私有属性名 )访问属性

输出:李狗蛋

      90000

2、方法:类的函数;

class User():         #类

    def __init__(self,first_name,last_name):  #方法(构造函数/实例)

        self.first_name = first_name

        self.last_name = last_name

    def describe_user(self):                  #方法

        print(self.first_name + self.last_name)


TT = User('李','狗蛋')

TT.greet_user()

输出:李狗蛋

3、python内置类方法:

_ _init_ _(self,[args])    #构造函数

class User():

    def __init__(self,first_name,last_name):

        self.first_name = first_name

        self.last_name = last_name

class Foo():

    def __init__(self,x,y):

        self.x = x

        self.y = y

    def Result1(self):

        return (self.x - self.y)*2

    def Result12(self):

        return self.x * self.y

ret = Foo(5,3)

print(ret.__class__)     # <class '__main__.Foo'>

print(ret.__repr__())    #<__main__.Foo object at 0x00000299B539FFD0>

print(ret.__hash__())    #142919569405

print(ret.__dict__)      #{'x': 5, 'y': 3}

print(ret.__doc__)       # None
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值