网站搜索

Python 中的惰性求值是什么?

懒惰并不总是坏事。您编写的每一行代码都至少有一个 Python 需要计算的表达式。 Python 惰性求值是指 Python 采用惰性选项并延迟计算表达式返回的值,直到需要该值为止。

Python 中的表达式是计算结果的代码单元。表达式的示例包括对象名称、函数调用、带有算术运算符的表达式、创建内置对象类型(例如列表)的文字等。然而,并非所有的陈述都是表达式。例如,if 语句和 for

阅读更多 →

Python 的单元测试:为您的代码编写单元测试

Python 标准库附带了一个名为 unittest 的测试框架,您可以使用该框架为代码编写自动化测试。 unittest 包采用面向对象的方法,其中测试用例派生自基类,该基类具有多种有用的方法。

该框架支持许多功能,可帮助您为代码编写一致的单元测试。这些功能包括测试用例、固定装置、测试套件和测试发现功能。

在本教程中,您将学习如何:

Python 序列:综合指南

你经常听到的一句话是,Python 中的一切都是对象,并且每个对象都有一个类型。这说明了Python中数据类型的重要性。然而,通常一个对象能做什么比它是什么更重要。因此,讨论数据类型的类别很有用,主要类别之一是Python的序列。

在本教程中,您将了解:

  • 序列的基本特征
  • 大多数序列通用的操作
  • 与序列相关的特殊方法
  • 抽象基类 阅读更多 →

使用 ChatGPT 为您的 Python 代码编写单元测试

对代码进行一系列良好的测试可能是许多 Python 项目的要求。在实践中,编写单元测试很困难,并且可能需要花费大量时间和精力。因此,有些开发人员不喜欢编写它们。但是,借助大型语言模型 (LLM) 和 ChatGPT 等工具,您可以快速为 Python 代码创建健壮且完整的测试集。

在 Python 中,您可以使用多种不同的工具来编写测试。最常用的工具包括 doctest、unittest 和 pytest

阅读更多 →

如何在 Python 中格式化 F 字符串中的浮点数

您经常需要对 Python float 进行格式化和舍入,以在字符串中整齐地显示计算结果。在早期版本的 Python 中,这是一件很麻烦的事情,因为您需要先对数字进行四舍五入,然后使用字符串连接或旧的字符串格式化技术来完成此操作。

从 Python 3.6 开始,文字字符串插值(通常称为格式化字符串文字或f-stri

阅读更多 →

在 Python 中读写 WAV 文件

有大量的第三方工具和库可用于在 Python 中操作和分析音频 WAV 文件。同时,该语言在其标准库中附带了鲜为人知的 wave 模块,提供了一种快速而直接的方式来读写此类文件。了解 Python 的 wave 模块可以帮助您深入了解数字音频处理。

如果音频分析、声音编辑或音乐合成等主题让您感到兴奋,那么您将会大饱口福,因为您即将体验它们!

在本教程中,您将学习如何:

使用 pipx 安装并执行 Python 应用程序

分发用 Python 编写的桌面和命令行应用程序的一种直接方法是将它们发布到 Python Package Index (PyPI) 上,该索引托管着数十万个第三方包。其中许多包都包含可运行的脚本,但使用它们需要对 Python 生态系统有相当的熟悉。使用 pipx,您可以安全地安装和执行此类应用程序,而不会影响您的全局 Python 解释器。

在本教程中,您将学习如何:

  • 将 Python Package Index (PyPI) 转变为应用程序市场
  • 运行已

    阅读更多 →

Pydantic:简化 Python 中的数据验证

Pydantic 是一个强大的 Python 数据验证和设置管理库,旨在增强代码库的稳健性和可靠性。从基本任务(例如检查变量是否为整数)到更复杂的任务(例如确保高度嵌套的字典键和值具有正确的数据类型),Pydantic 可以使用最少的样板代码处理几乎任何数据验证场景。

在本教程中,您将学习如何:

  • 使用 Pydantic 的 BaseModel 处理数据模式
  • 为复杂用例编写自定义验证器
  • 使用 Pydantic 的

    阅读更多 →

构建 Python 海龟游戏:太空侵略者克隆

在本教程中,您将使用 Python 的 turtle 模块构建 Space Invaders 克隆。 《太空入侵者》这款游戏不需要任何介绍。原版游戏于 1978 年发布,是有史以来最受认可的视频游戏之一。无可否认,它定义了自己的视频游戏类型。在本教程中,您将创建该游戏的基本克隆。

您将用于构建游戏的 turtle 模块是 Python 标准库的一部分,它使您能够在屏幕上绘制和移动

阅读更多 →

使用 LangChain 构建 LLM RAG 聊天机器人

您可能与大型语言模型 (LLM) 进行过交互,例如 OpenAI 的 ChatGPT 背后的模型,并体验过它们回答问题、总结文档、编写代码等的卓越能力。虽然法学硕士本身就很出色,但只要具备一点编程知识,您就可以利用 LangChain 等库来创建自己的由法学硕士支持的聊天机器人,它几乎可以做任何事情。

在企业环境中,创建 LLM 支持的聊天机器人最流行的方法之一是通过检索增强生成 (RAG)。当您设计 RAG 系统时,您使用检索模型通常从

阅读更多 →