美文网首页
10python 类

10python 类

作者: 图南99 | 来源:发表于2021-05-19 11:45 被阅读0次

    面向对象编程时最有效的软件编写方法之一,基于类来创建对象时,每个对象都自动具备这种通用的行为,然后根据需要在对每个对象赋予独特的个性
    根据类来创建对象被称为实例化,这样能够使用类的实例。
    1.创建类,
    类名应采用驼峰命名法,即将类名中的每个单词的首字母都大写,而不使用下划线。实例名和模块名都采用小写格式,并在单词之间加上下划线

    class User():
        def __init__(self,first_name,last_name):#形参self 必不可少,还必须位于其他形参的前面。
            self.first_name=first_name
            self.last_name=last_name
        def describe_user(self):
            print(self.first_name.title()+self.last_name.title())
        def greet_user(self):
            print("Hello " +self.first_name.title()+self.last_name.title()+"!")
    

    类中的函数称为方法,init() 是一个特殊的方法,每当根据User类创建实例是,都会自动运行这个方法

    2.根据类创建实例

    class User():
      --snip--
    first_user=User('zhang','lan')
    #访问属性
    first_user.first_name
    #调用方法
    first_user.greet_user()
    

    3.使用类和实例
    类编写好之后,根据类创建实例,实例不是一成不变的,需要做的就是修改实例的属性
    3.1给属性指定默认值

    class User():
        def __init__(self,first_name,last_name):
            self.first_name=first_name
            self.last_name=last_name
            self.login_attempts=0 #login_attempts的初始值设置为0
        def describe_user(self):
            print(self.first_name.title()+self.last_name.title())
        def greet_user(self):
            print("Hello " +self.first_name.title()+self.last_name.title()+"!")
        def increment_login_attempts(self):
            self.login_attempts +=1
            print(str(self.login_attempts))
        def resst_login_attempts(self):
            self.login_attempts=0
            print(str(self.login_attempts))
    

    3.2修改属性的值

    one_user=User('zhang','lan')
    one_user.login_attempts=3#直接通过实例进行修改
    one_user.increment_login_attempts()#通过方法进行递增(增加特定的值)
    one_user.resst_login_attempts()#通过方法进行设置
    

    相关文章

      网友评论

          本文标题:10python 类

          本文链接:https://www.haomeiwen.com/subject/htlxjltx.html