码迷,mamicode.com
首页 > 编程语言 > 详细

Python 基础入门 6_1 类与对象

时间:2019-03-30 22:45:59      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:定义变量   自动   elf   实例   函数   ret   方法(函数)   创建对象   回车   

# 类:一种数据类型,本身并不占内存空间,跟所学过的number等类型,一个类由属性(变量)和方法(函数)组成
# 对象: 要使用类内部的属性和方法,就需要实例化类,这种实例化类就叫做对象
"""
定义类
类名:首字母大写,其他遵循驼峰原则
属性:其他遵循驼峰原则
行为(方法/功能):其他遵循驼峰原则

创建一个类,格式如下:
class 类名():
定义属性(定义变量)
定义方法(定义函数)#在类中定义方法(函数)时,第一个参数名为self,表示对象名
构造函数:__init__(self[,paratmeters]),当使用该类创建对象时会调用该类的构造函数,默认是程序自动创建一个无参数的构造函数
一个类,有且仅有一个构造函数。作用:可以使对象创建出来时,给属性赋值
虚构函数:__del__(self) 当释放对象时,调用该方法
反写:__str__(self): 在调用print打印对象时自动调用,作用:可以打印对象时打印对象里的属性值
是给用户用的一个描述对象的方法 注意:这个函数里不能有print语句
__repr__(self): 跟__str__()很类似,区别在于,__str__()方法是在print方法打印对象时被调用,
__repr__()方法是在Python解释器里直接输入对象名在回车后被调用

self.__class__ 代表类名
"""

class Person():
name = ""
age = 0
def eat(self):
print("eat")
def sleep(self):
return 8
def __init__(self,name,age):
self.name = name
self.age = age
def __del__(self):
print("我被释放了",self)
def __str__(self):
return self.name+"已经"+str(self.age)+"岁了"
# def __repr__(self):
# return "在python解释器里输入了对象名"

"""
使用类实例化对象,格式如下:
对象名(自定义)=类名([paratmeters])
使用类中的属性/方法(函数),格式如下:
对象名.属性名/方法名
也可以将类中的属性/方法(函数)[若函数有返回值的话]赋值给变量:
变量 = 对象名.属性名/方法名
给对象的变量重新赋值,格式如下:
对象名.属性 = 新值
del 对象名 释放对象,释放后就不能调用方法
在函数里面创建对象,但这个函数运行完后释放对象
"""
person1 = Person("name",10)
print("name:%s age:%d" %(person1.name,person1.age))
person1.eat()
name1,age1,sleep1 = person1.name,person1.age,person1.sleep()
print("name1:%s age1:%d sleep:%d" %(name1,age1,sleep1))
print(person1)

Python 基础入门 6_1 类与对象

标签:定义变量   自动   elf   实例   函数   ret   方法(函数)   创建对象   回车   

原文地址:https://www.cnblogs.com/hjlin/p/10629536.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!