python中的类

关键字:class
含义:带有某些属性和方法的一个集合,可以理解成模板。

object的概念:类的实例。以对应类为模板,创建出来的对象。

如何理解python中的self?
1 实例本身,对象。
2 可以理解为一个字典变量,内部存的就是对象的数据属性。

在类的代码(函数)中,需要访问Instance中对应的变量(属性),读取之前的值和写入新的值调用对应函数(function)执行对应的动作需要访问实例的变量和调用实例的函数,Python中规定函数的第一个参数,必须是实例对象本身,即self。

PS:类中函数的第一个参数固定为self就可以了。

如何理解python中的init()?
这是python的构造方法。类似于init()初始化方法,用来初始化新创建对象状态,在一个对象创建以后立即调用,比如实例化一个类。

示例代码如下:

import datetime

class User:
    """存储用户信息"""   //帮助信息,可用help(class_name)查看
    def __init__(self,full_name,birthday):     //用于初始化方法,实例化对
        self.name=full_name                            //象可以直接调用方法中的值
        self.birthday=birthday 
        name_splits=full_name.split(' ')
        self.first_name=name_splits[0]
        self.last_name=name_splits[-1]

    def age(self):                                          //用了self后,类中方法可以调
        """计算用户你啊年龄"""                         //用实例中的变量
        today=datetime.date(2020,1,1)
        years=int(self.birthday[0:4])
        mouths=int(self.birthday[4:6])
        days=int(self.birthday[6:8])

        birth_data=datatime.data(years,mouths,days)
        how_old_in_days=(today-birth_data).days
        how_old_in_years=how_old_in_days/365

        return int(how_old_in_years)

user1=User1('Wang Feng','20091010')    //类的实例化,

print(user1.name)   //对象调用类中变量
print(user1.age())   //对象调用类中的方法
上一篇:转载:java程序调用内存的变化过程


下一篇:LightOJ 1104 Birthday Paradox