日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

懒人必备!只需一行代码,就能导入所有的Python库

發(fā)布時間:2024/9/15 python 52 豆豆
生活随笔 收集整理的這篇文章主要介紹了 懒人必备!只需一行代码,就能导入所有的Python库 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

今天給大家介紹一個懶人Python庫——Pyforest。

使用一行代碼,就能導(dǎo)入所有的Python庫(本地已經(jīng)安裝的)。

GitHub地址:https://github.com/8080labs/pyforest

/ 01 / 介紹

Python因為有著成千上萬個功能強大的開源庫,備受大家的歡迎。

目前,通過PyPl可以導(dǎo)入超過23.5萬個Python庫,數(shù)量龐大。

在大家平常的實踐當(dāng)中,一般都是需要導(dǎo)入多個庫或者框架來執(zhí)行任務(wù)。

而且每當(dāng)新建一個程序文件時,都需要根據(jù)自己的需求導(dǎo)入相關(guān)的庫。

如果是相同類型的任務(wù),比如想做一個數(shù)據(jù)可視化的小項目,可能會一直使用到某個庫。

如此,反復(fù)編寫同一條import語句,就算是復(fù)制粘貼,也會感覺到麻煩,這時Pyforest庫就可以上場了。

Pyforest是一個開源的Python庫,可以自動導(dǎo)入代碼中使用到的Python庫。

在進行數(shù)據(jù)可視化的時候,一般都需要導(dǎo)入多個庫,比如pandas、numpy、matplotlib等等。

使用了Pyforest,每個程序文件中就不需要導(dǎo)入相同的Python庫,而且也不必使用確切的導(dǎo)入語句。

比如下面這行代碼,就可以省略掉。

from?sklearn.ensemble?import?RandomForestClassifier

在你使用import語句導(dǎo)入Pyforest庫后,你就可以直接使用所有的Python庫。

import?pyforestdf?=?pd.read_csv('test.csv') print(df)

你使用的任何庫都不需要使用import語句導(dǎo)入,Pyforest會為你自動導(dǎo)入。

只有在代碼中調(diào)用庫或創(chuàng)建庫的對象后,才會導(dǎo)入庫。如果一個庫沒有被使用或調(diào)用,Pyforest將不會導(dǎo)入它。

/ 02 / 使用

安裝,使用以下命令安裝Pyforest。

pip?install?pyforest?-i?https://pypi.tuna.tsinghua.edu.cn/simple

安裝成功后,使用import語句導(dǎo)入它。

現(xiàn)在,你可以直接使用相關(guān)的Python庫,無需編寫import導(dǎo)入。

先以jupiter notebook為例,我們沒有導(dǎo)入pandas、seaborn和matplotlib庫,但是我們可以通過導(dǎo)入Pyforest庫直接使用它們。

讀取數(shù)據(jù),這個是國內(nèi)棉花產(chǎn)量排行前三的省份,新疆全國第一(數(shù)據(jù)來源:國家統(tǒng)計局)。

那么Pyforest可以導(dǎo)入所有庫嗎?

目前這個包包含了大部分流行的Python庫,比如

pandas?as?pd NumPy?as?np matplotlob.pyplot?as?plt seaborn?as?sns?

除了這些庫之外,它還提供了一些輔助的Python庫,如os、tqdm、re等。

如果你想查看庫列表,可以使用dir(pyforest)進行查看,內(nèi)置的是68個庫。

import?pyforestprint(len(dir(pyforest))) for?i?in?dir(pyforest):print(i)------------------------- 68 GradientBoostingClassifier GradientBoostingRegressor LazyImport OneHotEncoder Path RandomForestClassifier RandomForestRegressor SparkContext TSNE TfidfVectorizer ...

如果沒有的話,可以進行自定義添加,在主目錄中的文件寫入import語句。

示例如下。

vim?~/.pyforest/user_imports.py

添加語句,此處便能在代碼中使用requests這個庫。

#?Add?your?imports?here,?line?by?line #?e.g #?import?pandas?as?pd #?from?pathlib?import?Path #?import?reimport?requests?as?req ~??????????????????????????????????????????????????????????????????????????????? ~?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? "~/.pyforest/user_imports.py"?7L,?129C

這回我們在PyCharm中來實驗一下。

發(fā)現(xiàn)PyCharm的自動補全的功能失效了,看來這個庫還是比較適合jupyter notebook(自動補全代碼還可以使用)。

除了上面這個地方可以自定義添加,還可以在庫的_import.py文件中添加。

此處以Pyechars為例,縮寫為chart。

可視化代碼如下。

新疆棉花產(chǎn)量年年上升,其它省份年年下降...

最后Pyforest還提供了一些函數(shù)來了解庫的使用情況。

#?返回已導(dǎo)入并且正在使用的庫列表 print(pyforest.active_imports()) -------------------------------- ['import?pandas?as?pd',?'import?requests?as?req',?'import?pyg2plot']#?返回pyforest中所有Python庫的列表 print(pyforest.lazy_imports()) -------------------------------- ['import?glob',?'import?numpy?as?np',?'import?matplotlib.pyplot?as?plt'...]

只有代碼中有使用到的庫,程序才會import進去,否則不會導(dǎo)入的哦!

/ 03 / 總結(jié)

好了,到此本期的分享就結(jié)束了。

使用Pyforest庫有時候確實是可以節(jié)省一些時間,不過也是有弊端存在的。

比如調(diào)試的時候(大型項目),可能會很痛苦,不知道是哪里來的庫。

所以建議大家,在一些獨立的腳本程序中使用,效果應(yīng)該還是不錯的。

推薦閱讀

誤執(zhí)行了rm -fr /*之后,除了跑路還能怎么辦?!

程序員必備58個網(wǎng)站匯總

大幅提高生產(chǎn)力:你需要了解的十大Jupyter Lab插件

總結(jié)

以上是生活随笔為你收集整理的懒人必备!只需一行代码,就能导入所有的Python库的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。