python用来初始化对象属性的是_python学习之类与对象的初始化函数init用法

#@Author :wuailexiang

class Phone:

'''

这是一个手机类

主要功能有,打电话,发短信,看电视,听音乐

主要属性有,华为,3000,土豪金,android

'''

#通过初始化函数__init__把属性进行初始化

def __init__(self,brand_name,price,color,os):#可以给初始化参数进行默认值

self.brand_name =brand_name

self.price=price

self.color= color#把参数赋值给对象,只能用对象调用

Phone.os = os#把参数赋值给类,既可以用类调用也可以用对象调用

#功能,定义了几个方法

def call(self,name):

print('我的功能是打电话,我给{}打电话'.format(name))

@staticmethod

def massage(*arge):

print('我的功能是用来发短信的,我的短信内容是{}'.format(arge))

@classmethod

def watchTV(cls):#类方法,在类方法中调用对象方法,需要类名().方法名(),调用静态方法直接类名.方法名()

print('我的功能是看电视的')

@classmethod

def music(self,music_name='天堂'):

print('我的功能是用来听音乐的,我听的歌曲是{}'.format(music_name))

def calss_info(self):#对象方法

print('我的手机是{}手机,颜色是{},是{}系统,价格是{}元'.format(self.brand_name,self.color,self.os,self.price))

#调用类

p=Phone('华为',3500,'土豪金','android')# 调用类需要在类的后面加一个括号

p.call('张三')

p.calss_info()

4be4e0ca257f855ee309f97f88a29aa1.png

如果静态函数和类方法没有用到参数中的值,就可以直接用类名.方法名()调用,不需要创建对象,也就不需要传参数了

# -*- coding: UTF-8 -*-

#@Time :2019/09/08 11:23

#@Author :wuailexiang

class Phone:

'''

这是一个手机类

主要功能有,打电话,发短信,看电视,听音乐

主要属性有,华为,3000,土豪金,android

'''

#通过初始化函数__init__把属性进行初始化

def __init__(self,brand_name,price,color,os):#可以给初始化参数进行默认值

self.brand_name =brand_name

self.price=price

self.color= color#把参数赋值给对象,只能用对象调用

Phone.os = os#把参数赋值给类,既可以用类调用也可以用对象调用

@staticmethod

def massage(*arge):

print('我的功能是用来发短信的,我的短信内容是{}'.format(arge))

Phone.massage('今天周末明天又要上班')

54c564727b905170d8d4912f7ce8382e.png

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值