Python基础不懂语法(二)

继承

父类是继承的类,也称为基类;子类是另一个类继承的类,也称为派生类。

# 创建父类和子类 将从Person类继承属性和方法
class Person:
    def __init__(self, fname, lname):
        self.firstname = fname
        self.lastname = lname
    def printname(self):
        print(self.firstname, self.lastname)
        
x = Person("Bill", "Gates")
x.printname()

class Student(Person)
    # 当添加init函数时 子类将不继承父的init函数 覆盖了父的init函数 如保持父的init函数,需添加父的init函数调用
    def __init__(self, fname, lname):
        Person.__init__(self, fname, lname)
x = Student("Elon", "Musk")
x.printname()
# super()函数 会使子类从其父继承所有方法和属性

迭代器

迭代器是一个对象,该对象包含可计数数字。迭代器是可迭代的对象,意味着可以遍历所有值。

列表、元组、字典和集和都可以迭代对象,即它们是迭代的容器。

# 使用方法包括 __iter__() __next__() 类似初始函数__init__() 
# 从元组中返回一个迭代器,并打印每一个项目;也可以字符串返回迭代器,打印每一个字符;同时for循环遍历也可以迭代对象,每个循环执行next()方法
class MyNumbers:
    def __iter__(self):
        self.a = 1
        return self
    def __next__(self):
        if self.a <=20:
            x = self.a
            self.a += 1
            return x
        else:
            raise StopIteration # 作为一个终止条件 否则会一直进行
myclass = MyNumbers()
myiter = iter(myclass)

for x in myiter:
    print(x)

多态

词意为“多种形式”,指在许多对象或类上执行的具有相同名称的方法/函数/操作符。

# len()函数是python函数用于不同对象的例子 包括字符串 元组 字典
class Vehicle:
    def __init__(self, brand, model)
        self.brand = brand
        self.model = model
    def move(self):
        print("Move!")
class Car(Vehicle):
    pass
class Boat(Vehicle):
    def move(self):
        print("Sail!")
class Plane(Vehicle):
    def move(self):
        print("Fly!")
car1 = Car("Ford", "Mustang")
boat1 = Boat("Ibiza", "Touring 20")
plane1 = Plane("Boeing", "747")

for x in (car1, boat1, plane1)
    print(x.brand)
    print(x.model)
    x.move()
# 子类从父类继承属性和方法 
# Car Boat Plane类是空的 从Vehicle继承了属性和函数
CC BY-NC-SA 4.0 Deed | 署名-非商业性使用-相同方式共享
最后更新时间:2025-09-23 08:56:39