zoukankan      html  css  js  c++  java
  • Python类demo详解

    Dog类,赋予每条小狗蹲下(sit())和打滚(roll_over())的能力

    dog.py源码:

    class Dog():
      """一次模拟小狗的简单尝试"""

      def __init__(self, name, age):   """注意这里一共是4个_"""
        """初始化属性name和age"""
        self.name = name
        self.age = age

      def sit(self):
        """模拟小狗被命令时蹲下"""
        print(self.name.title() + " is now sitting.")

      def roll_over(self):
        """模拟小狗被命令时打滚"""
        print(self.name.title() + "rolled over!")

    Dog类名:在python中,首字母大写的名称指的是类;这个类定义中的括号是空的,因为我们要从空白创建这个类。

    """一次模拟小狗的简单尝试""":文档字符串,对这个类的功能作了描述。

    1、方法_init_()

      类中的函数都成为方法;前面学习的函数的一切都使用于方法。

      _init_()是一个特殊的方法,没当你根据Dog类创建新实例时,Python都会自动运行它。在这个方法的名称中。开头和末尾有两个下划线,这是一种约定,旨在避免python默认方法与普通方法冲突。

      我们将方法_init_定义成了包含三个参数:self、name和age。在这个方法的定义中,形参self必不可少,还必须位于其他形参的前面。因为Python调用这个_init_方法来创建Dog实例时,将自动传入实参self。每个与类相关联的方法调用都自动传递实参self,每个与类相关联的方法调用都自动传递实参self。它是一个指向实例本身的引用,让实例能够访问类中的属性和方法。

      我们创建Dog实例时,Python将调用Dog类的方法_init_()。我们将通过实参向Dog()传递名字和年龄;self会自动传递,因此我们不需要传递它。每当我们根据Dog类创建实例时,都只需给最后两个形参(name和age)提供值。

      self.name = name和selg.age = age 定义的变量都有前缀self。以self为前缀的变量都可供类中的所有方法使用,我们还可以通过类的任何实例来访问这些变量。self.name = name获取存储在形参name中的值,并将其存储到变量name中,然后该变量被关联到当前创建的示例。self.age = age的作用与此类似。像这样可以通过实例访问的变量称为属性。

      Dog还定义了另外两个方法sit()和roll_over()。由于这些方法不需要额外的信息,如名字或年龄,因此他们只有一个形参self。我们后边将创建的实例能够访问这些方法,换句话说,它们都会蹲下和打滚。

    在同一个文件中执行如下代码即创建了一个实例。

    print("My dog's name is "+my_dog.name.title()+".")
    print("My dog is " + str(my_dog.age)+" years old. ")

    my_dog.sit()
    my_dog.roll_over()

    输出结果:

    上述例子中用到了双引号,单引号和3个双引号。双引号(" 字符串 ")和单引号( '字符串' )都用来表示一个字符串,无区别。三个双引号( """注释""" )用来表示注释。

    他们区别参考链接:https://blog.csdn.net/woainishifu/article/details/76105667

    ===================注意事项==========================

    1、类中的每个属性都必须又初始值,哪怕这个值是0或空字符串。

    在某些情况下,如设置默认值时,在方法__init__内指定这种初始值是可行的;

    如果你对某个属性这样做了,就无需包含为它提供初始值的形参。

    eg: def __init__ (self, make)

        self.make = make

        self.model = model

  • 相关阅读:
    PowerShell2.0之Windows排错(二)查看服务依存性
    PowerShell2.0之桌面计算机维护(八)关闭或重启远程计算机
    PowerShell2.0之桌面计算机维护(九)磁盘管理
    PowerShell2.0之桌面计算机维护(五)管理桌面电源设置
    PowerShell2.0之桌面计算机维护(四)审核安全的屏幕保护程序
    PowerShell2.0之桌面计算机维护(七)性能计数器
    PowerShell2.0之Windows排错(三) 检查设备驱动
    Nacos服务分级存储模型、集群、负载均衡
    Nacos安装
    Nacos注册中心之搭建工程
  • 原文地址:https://www.cnblogs.com/ruigelwang/p/13946250.html
Copyright © 2011-2022 走看看