你能體會那種寫 Python 時不用 import 的幸福嗎
在寫 Python 程序的時候,我們需要依賴一些庫,所以一開始我們總是:
- import xxx as xxx
- from xxx import xxx
我們有時候?qū)懼鴮懼l(fā)現(xiàn)需要引入新的庫,就又得回到前面,再 import 一波,如果你用的是類似 jupyter 的編輯器,你添加完 import 語句之后還得再運行一下代碼塊。
這些操作往往都是重復(fù)性的,比如我們玩數(shù)據(jù)可視化的時候,總會這樣去 import 相關(guān)的庫:
- import pandas as pd
- import numpy as np
- import seaborn as sns
- ...
這時候有人就想到,哇靠,真麻煩,能不能不要每次都自己導(dǎo)入這些庫啊?你已經(jīng)是個成年人了,能不能在我寫代碼調(diào)用到相關(guān)庫的時候,你給老子自動導(dǎo)入啊?別報錯啊!
像這樣:

可以看到,在這里不用事先 import ,而是當使用到相關(guān)庫的時候,自動在第一行幫我們 import,幸福啊!
怎么弄的咧?
接下來小帥b要給你分享的是——Pyforest,一個可以自動幫你 import 的庫。
這個庫把一些流行的數(shù)據(jù)分析需要的 「import 語句」都封裝起來了。
它具有「懶加載」的功能,也就是說,當你安裝完之后,你在代碼中使用到相關(guān)的庫的時候,它就會幫你自動 import。而那些封裝好了的 import 語句,在你沒有使用到時是不會幫你一股腦 import 進來的。
你可以通過 pip 安裝一波:
- python pip install --upgrade pyforest
安裝完成后,你的 IPython 啟動配置會默認添加 pyforest_autoimport.py,這樣我們在使用 IPython 或者 Jupyter 的時候,可以直接使用它的功能,你在寫代碼時連它本身都不需要 import:
- import pyforest
比如當你安裝完之后,你可以直接打開 IPython,在不用寫 import 語句的情況下,直接使用相關(guān)的庫:


你可以看到,我這里的操作是直接使用庫的簡稱,這是因為人家在寫 LazyImport 的時候,已經(jīng)按我們寫代碼的習(xí)慣安排好了:

怎么樣?
當然,這里面封裝的 import 語句更多是做數(shù)據(jù)可視化相關(guān)的,那么如果你自己還想添加一些別的 import 語句進去,咋整呢?
很簡單,進入到你安裝的 pyforest 中,在 user_imports.py 中添加即可,一般路徑如下:
- ~/.pyforest/user_imports.py
比如,我在這里添加一個 import requests 的語句:

接著我就可以在不用導(dǎo)入 requests 的情況下,直接請求了:

你完全可以根據(jù)你自己的習(xí)慣,在 user_imports.py 添加 import 語句。
媽媽再也不用擔心,每次依賴庫的時候都需要寫 import 了。
這個庫比較適合在Jupyter Notebook, Jupyter Lab 或者 IPython 中使用,如果你想在別的地方也使用它,可以先導(dǎo)入 Pyforest,接著就可以使用你已經(jīng)封裝好的 import 語句,像這樣:

OK,以上就是小帥b今天給你帶來的分享,如果你之前沒了解過這個,不妨去試試,它會讓你心情變好的呢,希望對你有幫助。