首页 > 教程 > Python 开发环境的准备以及一些常用类库模块的安装

Python 开发环境的准备以及一些常用类库模块的安装

时间:2024-08-13 | 来源: | 阅读:157

话题: T 开发 环境 Python

在学习和开发Python的时候,第一步的工作就是先准备好开发环境,包括相关常用的插件,以及一些辅助工具,这样我们在后续的开发工作中,才能做到事半功倍。下面介绍一些Python 开发环境的准备以及一些常用类库模块的安装和使用的经验总结,供大家参考了解。

在学习和开发Python的时候,第一步的工作就是先准备好开发环境,包括相关常用的插件,以及一些辅助工具,这样我们在后续的开发工作中,才能做到事半功倍。下面介绍一些Python 开发环境的准备以及一些常用类库模块的安装和使用的经验总结,供大家参考了解。

1、开发VScode的安装及相关准备

在 Python 开发环境的准备中,有几个步骤是关键的。以下是一个详细的指南,涵盖了开发环境的准备以及一些常用插件的安装:

1)安装 VS Code
VS Code: 这是一个轻量级但功能强大的代码编辑器,支持丰富的扩展。你可以从 Visual Studio Code 官方网站 下载。打开官网 https://code.visualstudio.com/,下载软件包。或者你也可以使用其他的如 PyCharm, 可以从 JetBrains 官方网站 下载。

Python AI 编程助手:Fitten Code:

它是由非十大模型驱动的 AI 编程助手,它可以自动生成代码,提升开发效率,帮您调试 Bug,节省您的时间,另外还可以对话聊天,解决您编程碰到的问题。

Fitten Code是由非十大模型驱动的AI编程助手,它可以自动生成代码,提升开发效率,帮您调试Bug,节省您的时间。还可以对话聊天,解决您编程碰到的问题。免费且支持80多种语言:Python、C++、Javascript、Typescript、Java等。

强烈推荐使用 ,自动补齐代码功能,可以节省很多手工键入代码的时间,减少错误。

2)安装 VS Code Python 扩展
在VSCode中安装 Python 扩展,在扩展市场搜索 Python 并安装。

3)安装 Python
首先,确保你已经安装了 Python。你可以从 Python 官方网站 下载最新版本安装包并安装。
Window 平台安装 Python: https://www.python.org/downloads/windows/
Mac 平台安装 Python: https://www.python.org/downloads/mac-osx/

4)配置 Python 环境变量
打开系统环境变量,在 PATH 变量中添加 Python 目录,这样可以在命令行中直接使用 Python。

5)测试 Python 环境
在命令行中输入 python,如果出现 Python 解释器版本信息,则表示 Python 环境配置成功。

6)安装 pip
打开命令行,输入 pip install --upgrade pip,升级 pip 到最新版本。

7)安装 virtualenv
打开命令行,输入 pip install virtualenv,安装 virtualenv。

2、Python一些常用类库模块的安装

Python开发常用类库模块非常多,看你侧重于那个方面,基本上都时列出来一大串,我以常规后端Web API开发为侧重点进行一些重点的推介,供参考学习。

1) requests

requests 是一个简单易用的 Python 库,地址:https://github.com/psf/requests,用于发送 HTTP 请求。它的设计目标是使得与 Web 服务的交互更加方便和人性化。 requests 是基于 urllib3 之上的一个封装层,提供了简洁的 API 来处理常见的 HTTP 请求操作,如 GET、POST、PUT、DELETE 等。

requests 的主要特性

  • 简洁的 API :相比原生的 urllib requests 提供了更直观、更容易理解的接口。
  • 自动处理编码 requests 自动处理响应的内容编码,并自动解码 gzip deflate 压缩。
  • 支持保持会话 :通过 Session 对象, requests 可以在多个请求之间保持会话,处理 cookies。
  • 简化的错误处理 requests 会根据 HTTP 响应状态码抛出相应的异常,从而简化错误处理流程。
  • 丰富的功能 :支持 HTTP 认证、代理、SSL 证书验证、文件上传、多部分编码表单、会话对象、cookie 持久化、连接池管理等功能。

如果需要考虑异步处理,可以使用 aiohttp : aiohttp 是一个异步 HTTP 客户端和服务器框架,它使用 Python 的 asyncio 库来处理大量并发的请求。 aiohttp 适合那些需要高性能网络通信的应用,如 Web 服务、WebSocket 和实时数据处理。

2)?Uvicorn

Uvicorn 通常用于运行 FastAPI 或 Starlette 应用。以下是一个简单的 FastAPI 应用并使用 Uvicorn 运行:

3)FastAPI

FastAPI 是一个现代、快速(高性能)的 Web 框架,用于构建 API。它基于 Python 3.7+ 的类型提示,并且依赖于 Starlette (用于 web 服务器和路由)和 Pydantic (用于数据验证和序列化)。 FastAPI 的设计目标是提供与 Flask 和 Django 类似的开发体验,但在性能、类型安全和开发者友好性方面做出更大的提升。GitHub地址:https://github.com/fastapi/fastapi

FastAPI 的主要特性

  • 极高的性能 : 基于 ASGI 的异步支持,使得 FastAPI 在性能上接近 Node.js 和 Go 的水平,适合处理高并发。
  • 自动生成 API 文档 : 使用 OpenAPI 和 JSON Schema 自动生成交互式的 API 文档(如 Swagger UI 和 ReDoc)。
  • 基于类型提示的自动验证 : 利用 Python 的类型提示和 Pydantic ,自动进行数据验证和解析。
  • 异步支持 : 原生支持 async await ,能够处理异步任务,适合与数据库、第三方 API、WebSocket 等交互。
  • 内置依赖注入系统 : 使得依赖的声明和管理变得简洁而强大,便于模块化设计。
  • 开发者友好 : 提供了详细的错误信息和文档,支持自动补全,极大提升了开发效率。

以下是一个简单的 FastAPI 应用:

当你运行 FastAPI 应用时,它会自动生成交互式文档:

这两个文档界面可以让你查看 API 的结构,甚至可以直接在界面中进行 API 调用。如我在上篇随笔进行介绍的《 Python中FastAPI项目使用 Annotated的参数设计 》。

FastAPI 是一个非常现代化和高效的框架,非常适合用于构建高性能的 API。其自动文档生成、数据验证和依赖注入等特性,使得开发者能够更快、更安全地编写代码,并提供出色的用户体验。

FastAPI项目的参数设计,这些您可以在 路径操作函数 参数或使用 Annotated 的依赖函数中使用的特殊函数,用于从请求中获取数据。

我们引入配置文件,可以对FastAPI 中服务启动的参数进行统一的管理,如下main.py 代码所示。

3)pymysql 、pymssql、和?SQLAlchemy

涉及后端的处理,肯定绕不过数据库的处理操作,如对于MySQL、MS SqlServer等数据库的处理和封装。

PyMySQL 是一个纯 Python 实现的 MySQL 客户端库,用于连接 MySQL 数据库并执行 SQL 查询。它是 Python 的 MySQLdb 库的替代品,尤其适合那些在使用 Python 3 并且不希望依赖 C 语言扩展的项目。 PyMySQL 支持 MySQL 数据库的所有主要功能,包括事务、存储过程、连接池等。

PyMySQL 的主要特性

  • 纯 Python 实现 : 不依赖 C 扩展,易于安装和跨平台使用。
  • 兼容性好 : 与 MySQLdb 的接口非常相似,便于从 MySQLdb 迁移到 PyMySQL
  • 支持 MySQL 的所有主要功能 : 包括事务处理、存储过程、BLOB 数据类型等。
  • 简单易用 : 提供了直观的 API 进行数据库连接、查询、插入、更新和删除操作。

安装 PyMySQL

你可以通过 pip 来安装 PyMySQL :

使用 PyMySQL 连接到 MySQL 数据库:

如下是我实际表的一些操作例子代码。

输出的显示如下所示。

pymssql 是一个用于连接 Microsoft SQL Server 数据库的 Python 库,它是基于 FreeTDS 实现的轻量级数据库接口,旨在简化 Python 与 SQL Server 之间的交互。 pymssql 提供了对 T-SQL 语句的支持,并且可以执行存储过程和处理大批量数据插入等任务。

pymssql 的主要特性

  • 轻量级和易用性 : 提供了简单的 API 接口,易于快速上手。
  • 与 SQL Server 兼容 : 支持 Microsoft SQL Server 2005 及以上版本。
  • 跨平台支持 : 支持在 Windows、Linux 和 macOS 系统上运行。
  • 集成事务管理 : 通过 commit rollback 方法进行事务管理。
  • 支持存储过程 : 能够执行和处理存储过程,适用于复杂的数据库操作。
  • 批量插入支持 : 通过 executemany 方法高效地插入大量数据。

安装 pymssql

你可以通过 pip 安装 pymssql :

使用 pymssql 连接到 SQL Server 数据库, pymssql 支持事务,可以在执行多个操作时使用事务控制,以确保数据一致性:

SQLAlchemy 的主要特性

  • 对象关系映射(ORM) : 允许将 Python 类映射到数据库表,并且自动处理 SQL 的生成和执行。
  • SQL 表达式语言 : 提供了一个表达式语言层,允许构建和执行原生 SQL 查询,同时保留类型安全性和跨数据库兼容性。
  • 数据库抽象层 : 提供了跨数据库的兼容性,使得在不同数据库之间切换变得相对容易。
  • 高性能 : 通过细粒度的控制和缓存机制,优化了数据库访问的性能。
  • 事务管理 : 支持复杂的事务处理和上下文管理,使得数据库操作更加安全和一致。
  • 支持多种数据库 : 支持大多数主流的关系型数据库,如 SQLite、PostgreSQL、MySQL、Oracle、SQL Server 等。

安装 SQLAlchemy

你可以通过 pip 安装 SQLAlchemy

如果你要连接到特定的数据库,还需要安装相应的数据库驱动程序。例如,要连接到 MySQL 数据库,你还需要安装 pymysql mysqlclient

使用 SQLAlchemy 操作数据库, 可以统一多种数据库的操作处理,如SQLITE、SqlServer、MySQL、PostgreSQL等。

使用 SQLAlchemy 创建与数据库的连接:

由于对应的是ORM处理方式,因此和数据库表关联需要定义一个类对象,如下所示。

CRUD的操作例子代码如下所示。

由于篇幅限制,我们暂时介绍一些,其实就算是做后端WebAPI的处理,我们也需要了解很多不同的类库,Python类库非常丰富,而且同步、异步又有不同的类库差异,因此我们可以根据实际需要选用不同的类库来实现我们的框架目的。

如对于FastAPI的数据验证,我们一般引入?pydantic,可以对数据进行各种丰富的校验处理,类似于强类型和各种规则的校验。

如对于配置信息的处理,我们还可以引入?python-dotenv 和??pydantic_settings 来统一管理配置参数。

还有对于一些常规的文件格式,如json格式,txt格式的文件处理,以及PDF文件、Excel文件、图片操作、声音处理、二维码处理等,都有不同的类库提供辅助处理,我们可以从中择优选择即可。

Python的世界丰富多彩,让我们一起探索并应用在实践当中。


湘ICP备2022002427号-10湘公网安备:43070202000427号
© 2013~2019 haote.com 好特网