当前位置: 代码网 > it编程>前端脚本>Python > Python零基础必学之内置函数、函数注释、异步函数详解

Python零基础必学之内置函数、函数注释、异步函数详解

2026年08月25日 Python 我要评论
大家好,今天的内容涵盖四个相对独立但同样重要的知识点:常用内置函数的使用、函数注释的规范写法、异步函数的基础概念,以及面向对象编程的入门知识。这四个知识点在实际开发中各有其用武之地,掌握它们能让你对

大家好,今天的内容涵盖四个相对独立但同样重要的知识点:常用内置函数的使用、函数注释的规范写法、异步函数的基础概念,以及面向对象编程的入门知识。这四个知识点在实际开发中各有其用武之地,掌握它们能让你对 python 的理解更加全面。

一、常用内置函数

python 提供了大量内置函数,这里选取几个实用但容易被忽视的函数进行讲解。

1.1 abs():绝对值

abs() 返回数字的绝对值,支持整数、浮点数和复数。

# 整数和浮点数
print(abs(-10))      # 10
print(abs(-3.14))    # 3.14

1.2 all():全部为真

all() 接收一个可迭代对象,当所有元素都为 true 时返回 true,否则返回 false

# 所有元素为真
print(all([true, true, true]))     # true
print(all([1, 2, 3]))              # true

# 存在假值
print(all([true, false, true]))    # false
print(all([1, 0, 3]))              # false

# 空可迭代对象返回 true
print(all([]))                     # true

1.3 any():存在为真

any() 接收一个可迭代对象,当任意一个元素为 true 时返回 true,否则返回 false

# 存在真值
print(any([false, false, true]))   # true
print(any([0, 0, 1]))              # true

# 所有元素为假
print(any([false, false, false]))  # false
print(any([0, 0, 0]))              # false

# 空可迭代对象返回 false
print(any([]))                     # false

1.4 callable():判断是否可调用

callable() 判断一个对象是否可以被调用(即是否可以像函数一样使用 () 调用)。

只有函数和类可以被调用

print(callable(100))
f = lambda :print(666)
print(callable(f))
f()

1.5 dir():查看对象的属性和方法

dir() 返回对象的所有属性和方法列表,是调试时非常有用的工具。

# 查看字符串的方法
print(dir("hello"))
# ['__add__', '__class__', '__contains__', ... 'upper', 'zfill']

1.6 divmod():返回商和余数

divmod(a, b) 返回一个元组 (a // b, a % b),即商和余数。

# 基本用法
print(divmod(10, 3))    # (3, 1)  10 // 3 = 3, 10 % 3 = 1
print(divmod(17, 5))    # (3, 2)

1.7 pow():幂运算

pow(base, exp, mod) 返回 base 的 exp 次方,如果指定了 mod,则返回 (base ** exp) % mod

# 基本幂运算
print(pow(2, 3))     # 8  相当于 2 ** 3
print(pow(5, 2))     # 25

二、函数注释

函数注释(type hints)是 python 3.5+ 引入的特性,用于为函数参数和返回值添加类型信息,提高代码的可读性和可维护性。

 基本语法:

def 函数名(参数名: 类型, 参数名: 类型 = 默认值) -> 返回值类型:
    """函数文档字符串"""
    pass
# 基本类型注释
def greet(name: str) -> str:
    return f"hello, {name}"

def add(a: int, b: int) -> int:
    return a + b


# 调用
print(greet("张三"))   # hello, 张三
print(add(3, 5))       # 8

三、异步函数 async / await

异步编程是用于编写并发代码,特别适合 i/o 密集型任务(网络请求、数据库操作、文件读写等)。

3.1 基本概念

概念说明
async def定义异步函数(协程)
await等待一个异步操作完成
asynciopython 内置的异步 i/o 库
事件循环调度和管理多个协程的核心机制

3.2 基本用法

import asyncio

# 定义异步函数
async def say_hello():
    print("hello")
    await asyncio.sleep(1)   # 模拟耗时操作
    print("world")

# 运行异步函数(需要事件循环)
# python 3.7+
asyncio.run(say_hello())
# 输出:
# hello
# (等待1秒)
# world

3.3 多个异步任务并发执行

import asyncio
import time

async def task(name: str, delay: int):
    print(f"任务 {name} 开始")
    await asyncio.sleep(delay)
    print(f"任务 {name} 完成 (耗时 {delay}秒)")
    return f"{name} 的结果"

async def main():
    # 创建多个任务并发执行
    tasks = [
        task("a", 3),
        task("b", 2),
        task("c", 1)
    ]
    
    start = time.time()
    results = await asyncio.gather(*tasks)  # 并发执行所有任务
    print(f"所有结果: {results}")
    print(f"总耗时: {time.time() - start:.2f}秒")

asyncio.run(main())
# 输出:
# 任务 a 开始
# 任务 b 开始
# 任务 c 开始
# 任务 c 完成 (耗时 1秒)
# 任务 b 完成 (耗时 2秒)
# 任务 a 完成 (耗时 3秒)
# 所有结果: ['a 的结果', 'b 的结果', 'c 的结果']
# 总耗时: 3.00秒(而不是 3+2+1 = 6秒)

四、面向对象与初始化对象

面向对象编程(oop)是 python 的核心编程范式之一,通过类和对象来组织代码。

4.1 类与对象的基本概念

概念说明示例
对象的模板或蓝图class person:
对象类的具体实例p = person()
属性对象的特征或数据p.name = "张三"
方法对象的行为或功能p.greet()

4.2 定义类和创建对象

# 定义类
class person:
    """人类"""
    species = "人类"   # 类属性(所有实例共享)
    
    # 初始化方法(构造方法)
    def __init__(self, name: str, age: int):
        self.name = name    # 实例属性
        self.age = age
    
    # 实例方法
    def greet(self) -> str:
        return f"你好,我是 {self.name},今年 {self.age} 岁"
    
    def birthday(self):
        self.age += 1
        print(f"{self.name} 过生日了,现在 {self.age} 岁")

# 创建对象(实例化)
p1 = person("张三", 25)
p2 = person("李四", 30)

# 访问属性和方法
print(p1.name)          # 张三
print(p1.greet())       # 你好,我是 张三,今年 25 岁
p1.birthday()           # 张三 过生日了,现在 26 岁

print(p2.name)          # 李四
print(p2.greet())       # 你好,我是 李四,今年 30 岁

# 访问类属性
print(person.species)   # 人类
print(p1.species)       # 人类

4.3__init__方法详解

__init__ 是类的构造方法,在创建对象时自动调用,用于初始化对象的属性。

class student:
    def __init__(self, name: str, score: int, school: str = "北京大学"):
        self.name = name
        self.score = score
        self.school = school
    
    def info(self) -> str:
        return f"{self.name},{self.school},成绩:{self.score}"

# 创建对象时传入参数
s1 = student("张三", 85)
s2 = student("李四", 92, "清华大学")

print(s1.info())   # 张三,北京大学,成绩:85
print(s2.info())   # 李四,清华大学,成绩:92

4.4self参数的含义

self 代表当前实例对象,在实例方法中通过 self 访问实例的属性和其他方法。

class car:
    def __init__(self, brand: str, speed: int = 0):
        self.brand = brand
        self.speed = speed
    
    def accelerate(self, amount: int):
        self.speed += amount
        print(f"{self.brand} 加速到 {self.speed} km/h")
    
    def brake(self, amount: int):
        self.speed = max(0, self.speed - amount)
        print(f"{self.brand} 减速到 {self.speed} km/h")

# 每个实例都有自己的状态
car1 = car("宝马", 0)
car2 = car("奔驰", 0)

car1.accelerate(50)   # 宝马 加速到 50 km/h
car2.accelerate(80)   # 奔驰 加速到 80 km/h
car1.brake(20)        # 宝马 减速到 30 km/h

print(car1.speed)     # 30
print(car2.speed)     # 80

五、总结

知识点核心要点
abs()返回数字的绝对值
all()所有元素为真时返回 true
any()任意元素为真时返回 true
callable()判断对象是否可调用
dir()列出对象的属性和方法
divmod()返回 (商, 余数) 元组
pow()幂运算,支持取模
函数注释参数: 类型 和 -> 返回类型,提高可读性,辅助 ide 提示
async/await异步编程,适用于 i/o 密集型任务
asyncio.run()运行异步函数的入口
asyncio.gather()并发执行多个协程
对象的模板,用 class 定义
对象类的实例,通过 类名() 创建
__init__构造方法,初始化实例属性
self代表当前实例
类属性所有实例共享的属性
实例属性每个实例独有的属性

内置函数是 python 提供的基础工具箱,熟练掌握能提高编码效率;函数注释让代码更清晰;异步函数是处理高并发 i/o 的有力工具;面向对象是组织大型项目的核心方式。这四个知识点覆盖了从工具使用到架构设计的多个层面,建议结合实际项目多练习。

以上就是python零基础必学之内置函数、函数注释、异步函数详解的详细内容,更多关于python内置函数的资料请关注代码网其它相关文章!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2026  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com