降本增效!12 個必須嘗試的 Python 工具包!

數據分析那些事
8 min readApr 13, 2022

--

為什麼我們都喜歡Python?

對於初學者來說,這是一種美觀且易於學習的程式語言,可減少我們的學習成本。另外它是開源的,這意味著它將包含許多出色的庫。

在本文中,我挑選了 12 個最有用的軟體包給大家分享,相信你有有所收穫!

1、Dash

Dash是相對較新的。它是使用純Python構建資料視覺化應用程式的理想選擇,因此特別適合處理資料的小夥伴。Dash是Flask,Plotly.js和React.js的混合體。

Dash可以快速將所需的內容放入漂亮的儀表板中,而無需觸控任何一行Javascript。

2、PyGame

Pygame是SDL多媒體庫的Python包裝器模組。Simple DirectMedia Layer是一個跨平臺的開發庫,旨在提供對OpenGL和Direct3D Pygame的音訊鍵盤滑鼠操縱桿圖形硬體的低階訪問,並且高度可移植,並且可以在幾乎所有平臺和作業系統上執行。

它具有完善的遊戲引擎,也可以使用該庫直接從Python指令碼中播放MP3檔案。

3、Pillow

Pillow 是 Python 影象庫的分支。你可以使用該庫來建立縮圖,在檔案格式之間進行轉換,旋轉,應用濾鏡,顯示影象等等。如果需要對許多影象執行批次操作,這是理想的選擇。

為了快速瞭解它,這是如何從Python程式碼顯示影象的方法:

from PIL import Image
im = Image.open("kittens.jpg")
im.show()
print(im.format, im.size, im.mode)
# JPEG (1920, 1357) RGB

4、Colorama

使用Colorama,可以向終端新增一些顏色:

from colorama import Fore, Back, Style

print(Fore.RED + 'some red text')
print(Back.GREEN + 'and with a green background')
print(Style.DIM + 'and in dim text')
print(Style.RESET_ALL)
print('back to normal now')

該文件簡短而有趣,可以在Colorama PyPI頁面上找到。如果也想在Windows上使用它,則需要先呼叫colorama.init()。

5、JmesPath

在 Python 中使用 JSON 非常容易,因為 JSON 在 Python 字典上的對映非常好。對我來說,這是它最好的功能之一。

import jmespath

# Get a specific element
d = {"foo": {"bar": "baz"}}
print(jmespath.search('foo.bar', d))
# baz

# Using a wildcard to get all names
d = {"foo": {"bar": [{"name": "one"}, {"name": "two"}]}}
print(jmespath.search('foo.bar[*].name', d))
# [“one”, “two”]

6、Requests

Requests 建立下載次數最多的Python庫之一。它使 Web 請求確實非常簡單,但仍然非常強大且用途廣泛。

import requests

r = requests.get('https://api.github.com/user', auth=('user', 'pass'))
r.status_code
# 200
r.headers['content-type']
# 'application/json; charset=utf8'
r.encoding
# 'utf-8'
r.text
# u'{"type":"User"...'
r.json()
# {u'disk_usage': 368627, u'private_gists': 484, ...}

這是一個非常基本的示例,但是請求也可以完成所有高階工作,例如:

使用cookie進行身份驗證、執行POST,PUT,DELETE等、使用自定義證書、使用會話、使用代理。

7、Simplejson

Python中的本地json模組有什麼問題?沒有!實際上,Python的json是simplejson,它具有如下優點:

它可以在更多Python版本上使用;它比Python隨附的版本更新頻率更高;
它具有用C編寫的,因此非常快速。

try:
import simplejson as json
except ImportError:
import json

8、表情符號

這個 emoji 會給人留下深刻印象或排斥感,這取決於誰在看。如果你分析社交媒體資料時,這一功能派上了用場。

import emoji
result = emoji.emojize('Python is :thumbs_up:')
print(result)
# 'Python is '

# You can also reverse this:
result = emoji.demojize('Python is ')
print(result)
# 'Python is :thumbs_up:'

9、Chardet

可以使用chardet模組檢測檔案或資料流的字符集。例如,這在分析大量隨機文字時很有用。但是,當你不知道字符集是什麼時,也可以在處理遠端下載的資料時使用它。安裝chardet之後,您還有一個名為chardetect的額外命令列工具,可以像這樣使用:

$ chardetect somefile.txt
somefile.txt: ascii with confidence 1.0

10、Python-dateutil

python-dateutil 模組提供了對標準 datetime 模組的強大擴充套件。可以使用此庫做很多很棒的事情,比如:對日誌檔案中的日期進行模糊解析。

from dateutil.parser import parse

logline = 'INFO 2020-01-01T00:00:01 Happy new year, human.'
timestamp = parse(logline, fuzzy=True)
print(timestamp)
# 2020-01-01 00:00:01

11、進度條

progress 的使用方法

from progress.bar import Bar

bar = Bar('Processing', max=20)
for i in range(20):
# Do some work
bar.next()
bar.finish()

tqdm的功能大致相同,但它是最新的。首先以gif動畫形式進行一些演示:

12、IPython

如果你經常使用互動式程式,但是不瞭解IPython,則應該試驗一下!增強的IPython shell提供的一些功能包括:

全面的物件自省。

輸入歷史記錄,跨會話持續存在。

在具有自動生成的引用的會話期間快取輸出結果。

製表符補全,預設情況下支援python變數和關鍵字,檔名和函式關鍵字的補全。

“魔術”命令,用於控制環境並執行許多與IPython或作業系統相關的任務。

會話日誌記錄和重新載入。對pdb偵錯程式和Python分析器的整合訪問。

IPython的一個鮮為人知的功能:它的體系結構還允許並行和分散式計算。

IPython是Jupyter Notebook的核心,它是一個開放原始碼Web應用程式,可讓你建立和共享包含實時程式碼,方程式,視覺化效果和敘述文字的文件。

文章來源於Python學習與資料探勘

文章連結:https://mp.weixin.qq.com/s/ohiQzgpPBsJqQq5iJZ2PXw

立即試用FineBI免費版:

https://intl.finebi.com/zh-tw/trial?utm_source=Medium_Banner

※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※

我是「数据分析那些事」。常年分享数据分析干货,不定期分享好用的职场技能工具。各位也可以关注我的Facebook,按赞我的脸书并私讯「10」,送你十周入门数据分析电子书唷!期待你与我互动起来~

文章推荐

10个Python 小技巧

Python中几个有趣的函式

如何识别商业资料报告中的假资料

统计学上的四种错误

进阶指南:如何从资料分析师转型为资料科学家?

--

--

數據分析那些事
數據分析那些事

Written by 數據分析那些事

這是一個專注於數據分析職場的內容部落格,聚焦一批數據分析愛好者,在這裡,我會分享數據分析相關知識點推送、(工具/書籍)等推薦、職場心得、熱點資訊剖析以及資源大盤點,希望同樣熱愛數據的我們一同進步! 臉書會有更多互動喔:https://www.facebook.com/shujvfenxi/

No responses yet