1.函数的注释
基本语法:
def 函数名(参数名: 类型) -> 返回值类型: pass类型错误,不会报错,会继续输出,但会警告
def f1(a :int)->int: return a print(f1("t"))参数名:类型 | 类型 “|” 表示 或
def f1(a:int,b:float|int) -> int|float: print(a,b) return a + b f1(3,5.5)不同数据结构参数类型表达不同
def f2(data:list[str|int],obj:dict[str,int],n : int = 5): print(data, obj,n) f2([3,6,"a"],{"id" : 101},7)2.异步函数
异步函数是用于并发执行 I/O 密集型任务,提高程序效率。
例:代码运行会永远执行函数wake_up;因此为了并发执行,提高程序速率,我们使用异步函数
import time def wake_up(): while True: print(f"醒醒啦") time.sleep(1) def go_sleep(): while True: print(f"去睡觉") time.sleep(1) def main(): wake_up() go_sleep() main()async def 函数名() 异步 await(等待) asyncio.sleep(1) 等待一秒执行 asyncio.run()通过asyncio来启动协程
三个都是必不可少!
import asyncio async def wake_up(): while True: print(f"醒醒啦") await asyncio.sleep(1) async def go_sleep(): while True: print(f"去睡觉") await asyncio.sleep(1) async def go_to_school(): while True: print(f"去上学") await asyncio.sleep(1) async def main(): c1 = wake_up() c2 = go_sleep() c3 = go_to_school() await asyncio.gather(c1, c2, c3) asyncio.run(main())3.面向对象
面向函数编程是一种以函数为核心的编程范式,即函数可以像变量一样被传递、赋值和返回。
类是面向对象编程(OOP)的核心概念,可以理解为创建对象的蓝图或模板。
class Person: """人类""" pass # 创建实例(对象) p1 = Person() print(p1,type(p1)) # <class '__main__.Person'>4.初始化函数
类的核心组成部分:
__init__()— 构造函数
在创建对象时自动调用,用于初始化对象属性
self— 指向当前实例
self表示当前对象自身,所有实例方法都必须有self参数。
基本语法:
class 类名: # 初始化方法(构造函数) def __init__(self, 参数1, 参数2): """初始化实例""" self.属性1 = 参数1 # 实例属性 self.属性2 = 参数2 # 实例方法 def 方法名(self): """实例方法""" return self.属性1例:
class Person: def __init__(self, name, age): # 给self实例添加数据name self.name = name self.age = age def get_name(self): return self.name def set_name(self, name): self.name = name def get_age(self): return self.age def set_age(self, age): self.age = age # 类内的self 完全等同于类外的实例名 # 执行类 就是执行类的初始化函数 p1 = Person("li", 25) print(p1.name, p1.age) p1.set_name("ti") print(p1.name, p1.get_name()) p1.set_age(250) print(p1.get_age())