一、函数的定义
def 函数的名称 (参数) :
代码
return value
1、参数可以有多个,也可以没有。
2、return 返回一个值,如果没有return语句,函数默认返回none。
二、特殊的参数
1、可变位置参数(*args)
def sum_all(*args):
return sum(args)
result = sum_all(1, 2, 3, 4)
print(result)
输出10
2、可变关键字参数(**kwargs)
def display_info(**kwargs):
for key, value in kwargs.items():
print(f"{key}: {value}")
display_info(name="stl", age=21)
三、面向对象
1、类和对象
- 类(Class):类是对象的蓝图,定义了对象的属性和方法。
- 对象(Object):对象是类的实例,通过类创建的具体对象。
2、初始化方法和 self 参数
class Dog:
def __init__(self,name,age):
self.name = name
self.age = age
dog1 = Dog("hh",3)
print(dog1.age)
3、类属性
class Dog:
species = "wangwang"
def __init__(self, name, age):
self.name = name
self.age = age
dog1 = Dog("hh", 3)
print(dog1.species)
print(Dog.species)
species就是类属性,最后输出都是wangwang。
4、 对象属性
对象属性是属于对象本身的,每个对象都有自己的属性,且彼此之间独立。对象属性是通过实例化对象时在 __init__ 方法中初始化的。上面的 name 和 age 属性,这些是 对象属性。
5、继承
class Animal:
def __init__(self, name):
self.name = name
def speak(self):
print(f"{self.name} makes a sound.")
class Dog(Animal):
def speak(self):
print(f"{self.name} barks.")
dog = Dog("hh")
print(dog.name)
dog.speak()
输出hh breaks。
6、使用 super() 调用父类方法
class Animal:
def __init__(self, name):
self.name = name
self.legs = 2
class Dog(Animal):
def __init__(self, name):
super().__init__(name)
dog = Dog("hh")
print(dog.legs)
输出2,子类可以使用 super() 调用父类的方法,这样可以保留父类的方法,同时在子类中扩展或修改功能。