第九章 类 (一)创建和使用类、使用实例

目录

9.1 创建和使用类

9.1.1 类的定义

9.1.2 创建Dog类(class)

9.2 使用类和实例

9.2.1 根据类创建实例、实例的使用

9.2.2 给属性指定默认值及对属性的值修改


9.1 创建和使用类

        这里以我们需要打印一条dog的名字、年龄、正坐着、在打滚的信息为例(根据代码更好理解)。       

9.1.1 类的定义

        个人理解,类与函数有点相似,但也有很大的不同。

         一个类以 class 类名称(首字母大写,区分函数)开始。类中def 引导的叫方法,例如:__init__(),sit()等等。要调用参数,__init__()方法是类中必不可少的,()中的形参self也是必须存在的,必须放在其他形参前面。self.参数可以在整个类中使用。

9.1.2 创建Dog类(class)

class Dog:
    def __init__(self, name, age):    # init前后两下滑线
        self.name = name    # 将形参name的值给self.name
        self.age = age

    def sit(self):
        print(f"My dog {self.name} is now sitting, it is {self.age} years old")

    def roll_over(self):
        print(f"My dog {self.name} is rolling over")

9.2 使用类和实例

9.2.1 根据类创建实例、实例的使用

        根据类所创建的对象叫实例,例如下方的my_dog。使用类即 实例名 =  类名()即可,此时()中不需要传递self,只需要传递其他参数。实例和类中方法的使用为  实例名.方法。

        以下代码跟根据上述创建的类进行。

my_dog = Dog("Bob", 3)
print(my_dog.name)  # 访问属性
my_dog.sit()    # 使用方法
my_dog.roll_over()
your_dog = Dog("john", 2)   # 创建多个实例
print(your_dog.name)
your_dog.sit()
# 等等......


# 输出:
# Bob
# My dog Bob is now sitting, it is 3 years old
# My dog Bob is rolling over
# john

个人总结:比起函数,类的使用可以减少很多参数传递的麻烦,实例的使用可以很方便的去调用方法。

9.2.2 给属性指定默认值及对属性的值修改

class Dog:
    def __init__(self, name, age):  
        self.name = name
        self.age = age
        self.size = "10kg"    # 给属性指定默认值

    def size_weight(self):
        self.size = "20kg"
        print(f"my dog size is {self.size}")

    
my_dog = Dog("Bob", 3)
print(my_dog.size)
my_dog.size = "15kg"    # 直接修改
print(my_dog.size)
my_dog.size_weight()    # 在方法中修改

# 输出:
# 10kg
# 15kg
# my dog size is 20kg

本人新手,若有错误,欢迎指正;若有疑问,欢迎讨论。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值