你必須嘗試的20個 Python 庫
Python 是編程領域中最常用的編程語言之一,也是初學者的優秀選擇之一。Python 吸引人們的地方在于它的簡單性和易用的語法。是一個直譯語言,所以它變得更容易發現代碼中的錯誤。它是由 Guido van Rossum 開發的,并于1991年首次發布,從那時起,Python 開發者社區的人數與日俱增,人數眾多。根據一些資源,python 有一個超過1000萬人的社區。谷歌、亞馬遜、 Facebook 等數十億家公司都在使用它。
在過去的一年半里我一直在使用 Python,我最喜歡 Python 的地方是它的 One-Liners 和 Packages,這也是我選擇 Python 而不是其他語言的原因。
在本博客中,我將向您介紹20個非常有用的 Python 庫,您必須嘗試它們。讓我們開始吧。
1. Colorama
Colorama 是一個用來使你的終端看起來更好 Python 庫,它可以用來給終端添加顏色。
安裝:pip install colorama

示例
2. Pynput
此庫用于控制鼠標和鍵盤等外部設備的瞬間。使用一些簡單的代碼行,我們可以使用庫來控制鍵盤和鼠標。此庫的優秀應用程序是使用它創建一個鍵盤記錄程序。下面的代碼解釋了使用庫的鍵盤記錄器的實現。
安裝:pip install Pynput
- from pynput.keyboard import Key, Controller,Listener
- import time
- keyboard = Controller()
- keys=[]
- def on_press(key):
- global keys
- string = str(key).replace("'","")
- keys.append(string)
- main_string = "".join(keys)
- print(main_string)
- if len(main_string)>15:
- with open('keys.txt', 'a') as f:
- f.write(main_string)
- keys= []
- def on_release(key):
- if key == Key.esc:
- return False
- with Listener(on_press=on_press,on_release=on_release) as listener:
- listener.join()
3. progress 和 tqdm
Progress:使用這個庫,我們可以輕松地創建一個進度條。
安裝:pip 安裝進度
- from progress.bar import Bar
- bar = Bar('Loading', max=20)
- for i in range(20):
- # Any Task
- bar.next()
- bar.finish()
下面的動畫顯示了我們可以使用進度創建不同的條形圖。

tqdm:它也做類似的工作,但是看起來更有效率,并且與現代編程保持同步。
安裝:pip install tqdm
4. google trans
Googletrans 是一個免費的無限制的 python 庫,它是 Google 翻譯 API 的一個實現。使用這個庫,只需要幾行代碼就可以創建一個語言翻譯器。
安裝:pip install googletrans
- from googletrans import Translator , LANGUAGES
- from googletrans.models import Translated
- language = list(LANGUAGES.values())
- translator = Translator()
- translated=translator.translate(text="How are You??", src = 'english', dest = 'hindi')
- print(translated)
您還可以進一步創建一個 GUI,將一種語言翻譯成另一種語言。
5. google
谷歌庫允許你搜索一個查詢,找到相關的鏈接,并返回所有的鏈接。我們還可以自定義要返回的鏈接數量。
安裝:pip install google
- from googlesearch import search
- query = 'what is machine learning?'
- for j in search(query, tld="co.in", num=1, stop=5, pause=2): ## it will return a total of 5 links
- print(j)
6. Pillow
Pillow 是一個用于圖像處理的 python 庫。它可以用來創建縮略圖,轉換文件格式,旋轉,應用過濾器,顯示圖像,等等。如果您希望批量執行任務,那么它是一個理想的庫。
安裝:pip install pillow
為了快速了解這個庫,下面是一些代碼,您可以顯示一個圖像并將其更改為灰度。
- from PIL import Image, ImageOps
- img1 = Image.open("img.png") ## Load a imge
- img1.show()
- img2 = ImageOps.grayscale(img1) ## gray scale
- img2.show()

原始圖像向灰度的轉換
7. wikipedia
Wikipedia 庫允許我們通過 Python 腳本與 Wikipedia 進行交互。通過這個,我們可以在終端上搜索任何東西。
安裝:pip install wikipedia
- import wikipedia
- query = 'Narendra Modi'
- results = wikipedia.summary(query, sentences=2) ## change the number of sentence to get a larger words summary
- print(results)
8. SpeechRecognition
SpeechRecognition 是一個用于識別語音并將其轉換為文本的 Python 庫。它在幾個引擎和 api 的支持下識別語音。它甚至可以在離線模式下工作。
安裝:pip install SpeechRecognition
下面的代碼可以識別您的聲音,將其轉換成文本,然后在終端上打印出來。
- import speech_recognition as sr
- r = sr.Recognizer()
- with sr.Microphone() as source:
- t_end = time.time() + 5
- while time.time() < t_end:
- print("karl: Listening...")
- audio=r.listen(source)
- try:
- query = r.recognize_google(audio)
- print(f"user:{query}")
- except"
- print("Try Again")
9. IPython

這個庫為我們提供了在終端、 Qt 控制臺和通過 HTML 筆記本使用 IPython shell 的特性。這是三星筆記本的核心。你可以在這里找到完整的文檔。下面我列出了一些 IPython 的特性。
- 全面的對象自省
- 輸入歷史記錄,跨會話持久化
- 在使用自動生成的引用的會話期間緩存輸出結果
- 可擴展選項卡完成,默認支持完成 Python 變量和關鍵字、文件名和函數關鍵字
- 可擴展的“magic”命令系統,用于控制環境和執行與 IPython 或操作系統相關的許多任務
- 會話日志記錄和重載
- 針對特殊情況的可擴展語法處理
- 使用用戶可擴展別名系統訪問系統 shell
- 很容易嵌入到其他 Python 程序和 GUI 中
- 調試器和 Python 分析器的集成訪問
10. wxpython

wxPython 是一個用于 python 的 GUI 工具包。它是許多計算機軟件的強大包裝器,可以在各種不同的平臺上實現。它是一個跨平臺的庫。許多開發人員發現 wxPython 作為 Tkinter 的優質替代品非常有效。
11. Poetry
這是一個簡單易用的 Python 軟件包。它允許您管理 Python 打包和項目的版本控制。雖然你的項目依賴于許多庫,但是 Poetry 可以讓你很容易地控制它們。
安裝:pip install poetry

12. Pygame
Pygame 是許多 python 開發人員的最愛。它用于使用 Python 創建游戲。它是一個跨平臺的庫,幾乎可以在每個平臺上使用。盡管它是一個成熟的游戲引擎,但您也可以使用這個庫直接從 Python 腳本播放 MP3文件。它由計算機圖形學和聲音庫組成。
在 PyGame 上編寫的游戲和應用程序與所有 SDL 支持的操作系統兼容。它們也可以在機器人和平板電腦上運行。
安裝:pip install pygame
PyGame 有自己的網站 PyGame. org,其中包括教程和安裝說明。
13. Text Blob
TextBlob 是一個用于處理文本數據的 Python 庫。它提供了一個簡單的 API,用于深入研究常見的自然語言處理(NLP)任務,如詞性標注、名詞短語提取、情感分析、分類、翻譯等。
安裝:pip install textblob
- from textblob import TextBlob
- testimonial = TextBlob("Textblob is amazingly simple to use. What great fun!")
- testimonial.sentiment
14. OpenCV

OpenCV 是計算機視覺領域很受歡迎的庫。它最初是用 C 和 C++ 編寫的。現在也可以在 Python 中使用。它最初是由英特爾開發的。該庫是一個跨平臺的開源庫。免費使用。OpenCV 是一個高度優化的庫,主要關注實時應用程序。
安裝:pip install opencv-python
15. win10 toast
它是一個易于使用的 Python 庫,用于顯示 Windows 10 Toast Notifications,這對于 Windows GUI 開發非常有用。
安裝:pip install win10toast
應用:創建提醒應用程序
- from win10toast import ToastNotifier
- toaster = ToastNotifier()
- header = 'Medium Article'
- text = 'Its the correct time to start writing your article'
- toaster.show_toast(f"{header}",f"{text}",duration=10,threaded=True)
- while toaster.notification_active(): time.sleep(0.005)

16. playsound
顧名思義,這個庫用于在 Python 中播放音頻文件。
安裝:pip install playsound
應用: 使用 Python 創建音樂播放器
- from playsound import playsound
- playsound('PATH_TO_AUDIO_FILE')
17. webbrowser
這個 Python 包用于與網絡瀏覽器交互。它用于在用戶從命令行給出的瀏覽器中打開不同的鏈接。
安裝:pip install webbrowser
應用:自動化你的日常工作應用
- import webbrowser
- webbrowser.open("https://stackoverflow.com")
18. Python-dateutil
這個 Python 庫是 Python datetime 模塊的擴展,它提供了大量的特性和功能。
安裝:pip install python-dateutil
- from dateutil.relativedelta import *
- from dateutil.easter import *
- from dateutil.rrule import *
- from dateutil.parser import *
- from datetime import *
- now = parse("Tue 11 17:13:46 Dec UTC 2020")
- today = now.date()
- year = rrule(YEARLY,dtstart=now,bymonth=8,bymonthday=13,byweekday=FR)[0].year
- rdelta = relativedelta(easter(year), today)
- print("Today is: %s" % today)
19. Setuptools
這個 Python 庫是 Python 中所有庫的父類,它用于在 Python 中創建庫。
安裝:pip install setuptools
20. pyfiglet
Pyfiglet Python 庫用于在終端中編寫時髦的文本。這是我在創建 CLI 應用程序是最喜歡使用的軟件包之一。
安裝:pip install pyfiglet






























