20 个超棒的 Python 库

技术讨论 xiaoxiaohui ⋅ 于 2周前 ⋅ 374 阅读
来源: 小白玩转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

file

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()

下面的动画显示了我们可以使用进度创建不同的条形图。
file

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()

file

原始图像向灰度的转换


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
file

这个库为我们提供了在终端、 Qt 控制台和通过 HTML 笔记本使用 IPython shell 的特性。这是木星笔记本的核心。你可以在这里找到完整的文档。下面我列出了一些 IPython 的特性。

  • 全面的对象自省

  • 输入历史记录,跨会话持久化

  • 在使用自动生成的引用的会话期间缓存输出结果

  • 可扩展选项卡完成,默认支持完成 Python 变量和关键字、文件名和函数关键字

  • 可扩展的“magic”命令系统,用于控制环境和执行与 IPython 或操作系统相关的许多任务

  • 会话日志记录和重载

  • 针对特殊情况的可扩展语法处理

  • 使用用户可扩展别名系统访问系统 shell

  • 很容易嵌入到其他 Python 程序和 GUI 中

  • 调试器和 Python 分析器的集成访问


10. wxpython
file

wxPython 是一个用于 python 的 GUI 工具包。它是许多计算机软件的强大包装器,可以在各种不同的平台上实现。它是一个跨平台的库。许多开发人员发现 wxPython 作为 Tkinter 的最佳替代品非常有效。

11. Poetry

这是一个简单易用的 Python 软件包。它允许您管理 Python 打包和项目的版本控制。虽然你的项目依赖于许多库,但是 Poetry 可以让你很容易地控制它们。

安装:pip install poetry
file

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
file

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)   

file


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
file

·  END  ·


相关推荐:
Python 最全资源中文版 | 让你相见恨晚的 Python 库!
Python 加速运行技巧

成为第一个点赞的人吧 :bowtie:
回复数量: 0
暂无回复~
您需要登陆以后才能留下评论!