您的位置:首頁 > 軟件教程 > 教程 > Python 開發(fā)環(huán)境的準(zhǔn)備以及一些常用類庫模塊的安裝

Python 開發(fā)環(huán)境的準(zhǔn)備以及一些常用類庫模塊的安裝

來源:好特整理 | 時(shí)間:2024-08-13 10:06:22 | 閱讀:148 |  標(biāo)簽: T 開發(fā) 環(huán)境 Python   | 分享到:

在學(xué)習(xí)和開發(fā)Python的時(shí)候,第一步的工作就是先準(zhǔn)備好開發(fā)環(huán)境,包括相關(guān)常用的插件,以及一些輔助工具,這樣我們?cè)诤罄m(xù)的開發(fā)工作中,才能做到事半功倍。下面介紹一些Python 開發(fā)環(huán)境的準(zhǔn)備以及一些常用類庫模塊的安裝和使用的經(jīng)驗(yàn)總結(jié),供大家參考了解。

在學(xué)習(xí)和開發(fā)Python的時(shí)候,第一步的工作就是先準(zhǔn)備好開發(fā)環(huán)境,包括相關(guān)常用的插件,以及一些輔助工具,這樣我們?cè)诤罄m(xù)的開發(fā)工作中,才能做到事半功倍。下面介紹一些Python 開發(fā)環(huán)境的準(zhǔn)備以及一些常用類庫模塊的安裝和使用的經(jīng)驗(yàn)總結(jié),供大家參考了解。

1、開發(fā)VScode的安裝及相關(guān)準(zhǔn)備

在 Python 開發(fā)環(huán)境的準(zhǔn)備中,有幾個(gè)步驟是關(guān)鍵的。以下是一個(gè)詳細(xì)的指南,涵蓋了開發(fā)環(huán)境的準(zhǔn)備以及一些常用插件的安裝:

1)安裝 VS Code
VS Code: 這是一個(gè)輕量級(jí)但功能強(qiáng)大的代碼編輯器,支持豐富的擴(kuò)展。你可以從 Visual Studio Code 官方網(wǎng)站 下載。打開官網(wǎng) https://code.visualstudio.com/,下載軟件包;蛘吣阋部梢允褂闷渌娜 PyCharm, 可以從 JetBrains 官方網(wǎng)站 下載。

Python AI 編程助手:Fitten Code:

它是由非十大模型驅(qū)動(dòng)的 AI 編程助手,它可以自動(dòng)生成代碼,提升開發(fā)效率,幫您調(diào)試 Bug,節(jié)省您的時(shí)間,另外還可以對(duì)話聊天,解決您編程碰到的問題。

Fitten Code是由非十大模型驅(qū)動(dòng)的AI編程助手,它可以自動(dòng)生成代碼,提升開發(fā)效率,幫您調(diào)試Bug,節(jié)省您的時(shí)間。還可以對(duì)話聊天,解決您編程碰到的問題。免費(fèi)且支持80多種語言:Python、C++、Javascript、Typescript、Java等。

強(qiáng)烈推薦使用 ,自動(dòng)補(bǔ)齊代碼功能,可以節(jié)省很多手工鍵入代碼的時(shí)間,減少錯(cuò)誤。

2)安裝 VS Code Python 擴(kuò)展
在VSCode中安裝 Python 擴(kuò)展,在擴(kuò)展市場(chǎng)搜索 Python 并安裝。

3)安裝 Python
首先,確保你已經(jīng)安裝了 Python。你可以從 Python 官方網(wǎng)站 下載最新版本安裝包并安裝。
Window 平臺(tái)安裝 Python: https://www.python.org/downloads/windows/
Mac 平臺(tái)安裝 Python: https://www.python.org/downloads/mac-osx/

4)配置 Python 環(huán)境變量
打開系統(tǒng)環(huán)境變量,在 PATH 變量中添加 Python 目錄,這樣可以在命令行中直接使用 Python。

5)測(cè)試 Python 環(huán)境
在命令行中輸入 python,如果出現(xiàn) Python 解釋器版本信息,則表示 Python 環(huán)境配置成功。

6)安裝 pip
打開命令行,輸入 pip install --upgrade pip,升級(jí) pip 到最新版本。

7)安裝 virtualenv
打開命令行,輸入 pip install virtualenv,安裝 virtualenv。

2、Python一些常用類庫模塊的安裝

Python開發(fā)常用類庫模塊非常多,看你側(cè)重于那個(gè)方面,基本上都時(shí)列出來一大串,我以常規(guī)后端Web API開發(fā)為側(cè)重點(diǎn)進(jìn)行一些重點(diǎn)的推介,供參考學(xué)習(xí)。

1) requests

requests 是一個(gè)簡(jiǎn)單易用的 Python 庫,地址:https://github.com/psf/requests,用于發(fā)送 HTTP 請(qǐng)求。它的設(shè)計(jì)目標(biāo)是使得與 Web 服務(wù)的交互更加方便和人性化。 requests 是基于 urllib3 之上的一個(gè)封裝層,提供了簡(jiǎn)潔的 API 來處理常見的 HTTP 請(qǐng)求操作,如 GET、POST、PUT、DELETE 等。

requests 的主要特性

  • 簡(jiǎn)潔的 API :相比原生的 urllib requests 提供了更直觀、更容易理解的接口。
  • 自動(dòng)處理編碼 requests 自動(dòng)處理響應(yīng)的內(nèi)容編碼,并自動(dòng)解碼 gzip deflate 壓縮。
  • 支持保持會(huì)話 :通過 Session 對(duì)象, requests 可以在多個(gè)請(qǐng)求之間保持會(huì)話,處理 cookies。
  • 簡(jiǎn)化的錯(cuò)誤處理 requests 會(huì)根據(jù) HTTP 響應(yīng)狀態(tài)碼拋出相應(yīng)的異常,從而簡(jiǎn)化錯(cuò)誤處理流程。
  • 豐富的功能 :支持 HTTP 認(rèn)證、代理、SSL 證書驗(yàn)證、文件上傳、多部分編碼表單、會(huì)話對(duì)象、cookie 持久化、連接池管理等功能。

如果需要考慮異步處理,可以使用 aiohttp : aiohttp 是一個(gè)異步 HTTP 客戶端和服務(wù)器框架,它使用 Python 的 asyncio 庫來處理大量并發(fā)的請(qǐng)求。 aiohttp 適合那些需要高性能網(wǎng)絡(luò)通信的應(yīng)用,如 Web 服務(wù)、WebSocket 和實(shí)時(shí)數(shù)據(jù)處理。

2)?Uvicorn

Uvicorn 通常用于運(yùn)行 FastAPI 或 Starlette 應(yīng)用。以下是一個(gè)簡(jiǎn)單的 FastAPI 應(yīng)用并使用 Uvicorn 運(yùn)行:

3)FastAPI

FastAPI 是一個(gè)現(xiàn)代、快速(高性能)的 Web 框架,用于構(gòu)建 API。它基于 Python 3.7+ 的類型提示,并且依賴于 Starlette (用于 web 服務(wù)器和路由)和 Pydantic (用于數(shù)據(jù)驗(yàn)證和序列化)。 FastAPI 的設(shè)計(jì)目標(biāo)是提供與 Flask 和 Django 類似的開發(fā)體驗(yàn),但在性能、類型安全和開發(fā)者友好性方面做出更大的提升。GitHub地址:https://github.com/fastapi/fastapi

FastAPI 的主要特性

  • 極高的性能 : 基于 ASGI 的異步支持,使得 FastAPI 在性能上接近 Node.js 和 Go 的水平,適合處理高并發(fā)。
  • 自動(dòng)生成 API 文檔 : 使用 OpenAPI 和 JSON Schema 自動(dòng)生成交互式的 API 文檔(如 Swagger UI 和 ReDoc)。
  • 基于類型提示的自動(dòng)驗(yàn)證 : 利用 Python 的類型提示和 Pydantic ,自動(dòng)進(jìn)行數(shù)據(jù)驗(yàn)證和解析。
  • 異步支持 : 原生支持 async await ,能夠處理異步任務(wù),適合與數(shù)據(jù)庫、第三方 API、WebSocket 等交互。
  • 內(nèi)置依賴注入系統(tǒng) : 使得依賴的聲明和管理變得簡(jiǎn)潔而強(qiáng)大,便于模塊化設(shè)計(jì)。
  • 開發(fā)者友好 : 提供了詳細(xì)的錯(cuò)誤信息和文檔,支持自動(dòng)補(bǔ)全,極大提升了開發(fā)效率。

以下是一個(gè)簡(jiǎn)單的 FastAPI 應(yīng)用:

當(dāng)你運(yùn)行 FastAPI 應(yīng)用時(shí),它會(huì)自動(dòng)生成交互式文檔:

這兩個(gè)文檔界面可以讓你查看 API 的結(jié)構(gòu),甚至可以直接在界面中進(jìn)行 API 調(diào)用。如我在上篇隨筆進(jìn)行介紹的《 Python中FastAPI項(xiàng)目使用 Annotated的參數(shù)設(shè)計(jì) 》。

Python 開發(fā)環(huán)境的準(zhǔn)備以及一些常用類庫模塊的安裝

FastAPI 是一個(gè)非,F(xiàn)代化和高效的框架,非常適合用于構(gòu)建高性能的 API。其自動(dòng)文檔生成、數(shù)據(jù)驗(yàn)證和依賴注入等特性,使得開發(fā)者能夠更快、更安全地編寫代碼,并提供出色的用戶體驗(yàn)。

FastAPI項(xiàng)目的參數(shù)設(shè)計(jì),這些您可以在 路徑操作函數(shù) 參數(shù)或使用 Annotated 的依賴函數(shù)中使用的特殊函數(shù),用于從請(qǐng)求中獲取數(shù)據(jù)。

我們引入配置文件,可以對(duì)FastAPI 中服務(wù)啟動(dòng)的參數(shù)進(jìn)行統(tǒng)一的管理,如下main.py 代碼所示。

3)pymysql 、pymssql、和?SQLAlchemy

涉及后端的處理,肯定繞不過數(shù)據(jù)庫的處理操作,如對(duì)于MySQL、MS SqlServer等數(shù)據(jù)庫的處理和封裝。

PyMySQL 是一個(gè)純 Python 實(shí)現(xiàn)的 MySQL 客戶端庫,用于連接 MySQL 數(shù)據(jù)庫并執(zhí)行 SQL 查詢。它是 Python 的 MySQLdb 庫的替代品,尤其適合那些在使用 Python 3 并且不希望依賴 C 語言擴(kuò)展的項(xiàng)目。 PyMySQL 支持 MySQL 數(shù)據(jù)庫的所有主要功能,包括事務(wù)、存儲(chǔ)過程、連接池等。

PyMySQL 的主要特性

  • 純 Python 實(shí)現(xiàn) : 不依賴 C 擴(kuò)展,易于安裝和跨平臺(tái)使用。
  • 兼容性好 : 與 MySQLdb 的接口非常相似,便于從 MySQLdb 遷移到 PyMySQL 。
  • 支持 MySQL 的所有主要功能 : 包括事務(wù)處理、存儲(chǔ)過程、BLOB 數(shù)據(jù)類型等。
  • 簡(jiǎn)單易用 : 提供了直觀的 API 進(jìn)行數(shù)據(jù)庫連接、查詢、插入、更新和刪除操作。

安裝 PyMySQL

你可以通過 pip 來安裝 PyMySQL :

使用 PyMySQL 連接到 MySQL 數(shù)據(jù)庫:

如下是我實(shí)際表的一些操作例子代碼。

輸出的顯示如下所示。

Python 開發(fā)環(huán)境的準(zhǔn)備以及一些常用類庫模塊的安裝

pymssql 是一個(gè)用于連接 Microsoft SQL Server 數(shù)據(jù)庫的 Python 庫,它是基于 FreeTDS 實(shí)現(xiàn)的輕量級(jí)數(shù)據(jù)庫接口,旨在簡(jiǎn)化 Python 與 SQL Server 之間的交互。 pymssql 提供了對(duì) T-SQL 語句的支持,并且可以執(zhí)行存儲(chǔ)過程和處理大批量數(shù)據(jù)插入等任務(wù)。

pymssql 的主要特性

  • 輕量級(jí)和易用性 : 提供了簡(jiǎn)單的 API 接口,易于快速上手。
  • 與 SQL Server 兼容 : 支持 Microsoft SQL Server 2005 及以上版本。
  • 跨平臺(tái)支持 : 支持在 Windows、Linux 和 macOS 系統(tǒng)上運(yùn)行。
  • 集成事務(wù)管理 : 通過 commit rollback 方法進(jìn)行事務(wù)管理。
  • 支持存儲(chǔ)過程 : 能夠執(zhí)行和處理存儲(chǔ)過程,適用于復(fù)雜的數(shù)據(jù)庫操作。
  • 批量插入支持 : 通過 executemany 方法高效地插入大量數(shù)據(jù)。

安裝 pymssql

你可以通過 pip 安裝 pymssql :

使用 pymssql 連接到 SQL Server 數(shù)據(jù)庫, pymssql 支持事務(wù),可以在執(zhí)行多個(gè)操作時(shí)使用事務(wù)控制,以確保數(shù)據(jù)一致性:

SQLAlchemy 的主要特性

  • 對(duì)象關(guān)系映射(ORM) : 允許將 Python 類映射到數(shù)據(jù)庫表,并且自動(dòng)處理 SQL 的生成和執(zhí)行。
  • SQL 表達(dá)式語言 : 提供了一個(gè)表達(dá)式語言層,允許構(gòu)建和執(zhí)行原生 SQL 查詢,同時(shí)保留類型安全性和跨數(shù)據(jù)庫兼容性。
  • 數(shù)據(jù)庫抽象層 : 提供了跨數(shù)據(jù)庫的兼容性,使得在不同數(shù)據(jù)庫之間切換變得相對(duì)容易。
  • 高性能 : 通過細(xì)粒度的控制和緩存機(jī)制,優(yōu)化了數(shù)據(jù)庫訪問的性能。
  • 事務(wù)管理 : 支持復(fù)雜的事務(wù)處理和上下文管理,使得數(shù)據(jù)庫操作更加安全和一致。
  • 支持多種數(shù)據(jù)庫 : 支持大多數(shù)主流的關(guān)系型數(shù)據(jù)庫,如 SQLite、PostgreSQL、MySQL、Oracle、SQL Server 等。

安裝 SQLAlchemy

你可以通過 pip 安裝 SQLAlchemy

如果你要連接到特定的數(shù)據(jù)庫,還需要安裝相應(yīng)的數(shù)據(jù)庫驅(qū)動(dòng)程序。例如,要連接到 MySQL 數(shù)據(jù)庫,你還需要安裝 pymysql mysqlclient

使用 SQLAlchemy 操作數(shù)據(jù)庫, 可以統(tǒng)一多種數(shù)據(jù)庫的操作處理,如SQLITE、SqlServer、MySQL、PostgreSQL等。

使用 SQLAlchemy 創(chuàng)建與數(shù)據(jù)庫的連接:

由于對(duì)應(yīng)的是ORM處理方式,因此和數(shù)據(jù)庫表關(guān)聯(lián)需要定義一個(gè)類對(duì)象,如下所示。

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

由于篇幅限制,我們暫時(shí)介紹一些,其實(shí)就算是做后端WebAPI的處理,我們也需要了解很多不同的類庫,Python類庫非常豐富,而且同步、異步又有不同的類庫差異,因此我們可以根據(jù)實(shí)際需要選用不同的類庫來實(shí)現(xiàn)我們的框架目的。

如對(duì)于FastAPI的數(shù)據(jù)驗(yàn)證,我們一般引入?pydantic,可以對(duì)數(shù)據(jù)進(jìn)行各種豐富的校驗(yàn)處理,類似于強(qiáng)類型和各種規(guī)則的校驗(yàn)。

如對(duì)于配置信息的處理,我們還可以引入?python-dotenv 和??pydantic_settings 來統(tǒng)一管理配置參數(shù)。

還有對(duì)于一些常規(guī)的文件格式,如json格式,txt格式的文件處理,以及PDF文件、Excel文件、圖片操作、聲音處理、二維碼處理等,都有不同的類庫提供輔助處理,我們可以從中擇優(yōu)選擇即可。

Python的世界豐富多彩,讓我們一起探索并應(yīng)用在實(shí)踐當(dāng)中。

小編推薦閱讀

好特網(wǎng)發(fā)布此文僅為傳遞信息,不代表好特網(wǎng)認(rèn)同期限觀點(diǎn)或證實(shí)其描述。

相關(guān)視頻攻略

更多

掃二維碼進(jìn)入好特網(wǎng)手機(jī)版本!

掃二維碼進(jìn)入好特網(wǎng)微信公眾號(hào)!

本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請(qǐng)發(fā)郵件[email protected]

湘ICP備2022002427號(hào)-10 湘公網(wǎng)安備:43070202000427號(hào)© 2013~2024 haote.com 好特網(wǎng)