欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python:一行代码,导入Python所有库

程序员文章站 2022-06-17 19:34:36
目录2、pyforest2.1 pyforest 介绍2.2 pyforest 安装与使用1、引言今天我们来分享一个懒人库:pyforest。小屌丝:鱼哥,今天啥情况,你突然分享这个库?小鱼:这不是因...

1、引言

今天我们来分享一个懒人库:pyforest。

小屌丝:鱼哥,今天啥情况,你突然分享这个库?

小鱼:这不是因为我准备换吃饭的家伙 电脑,为了能省事,少敲几次pip install xxx 的动作…

小屌丝:嗯??你的意思,安装这个库,就不需要安装别的库了?

小鱼:必须的~像我这种节约时间的男人…

小屌丝:你能不能好好说话!!!

小鱼:…好吧…

通过小屌丝跟小鱼的对话,我们可以大概了解到,pyforest库是一个万能库,几乎可以说不需要再单独安装别的库。

这不就可以把省下的时间来聊妹子了 聊工作了…

Python:一行代码,导入Python所有库

pyforest到底有没有小鱼说的这么牛叉,

我们继续往下瞅!

2、pyforest

2.1 pyforest 介绍

pyforest是一个开源的python库,可以自动导入代码中使用到的python库。

例如:我们在做数据分析时,需要导入多个库,pandas、numpy、matplotlib等,这很不方便,

所以,这就有了pyforest的诞生,使用pyforest,每个程序文件中就不需要导入相同的python库,而且也不必使用确切的导入语句。

这是多么省事 操作~

直接代码展示一下:

# -*- coding:utf-8 -*-
# @time   : 2021-07-26
# @author : carl_dj

#导入pyforest
import pyforest

#直接调用
df = pd.read_csv('test.csv')
print(df)

这里有3个点,需要了解:

  • 使用的任何库都不需要使用import语句导入,pyforest会为你自动导入;
  • 只有在代码中调用库或创建库的对象后,才会导入库;
  • 如果一个库没有被使用或调用,pyforest将不会导入它。

如果想看pyforest的源码,直接点击github传送门。

在github还是有不错的标星,关键还是持续更新的。

如下图:

Python:一行代码,导入Python所有库

2.2 pyforest 安装与使用

2.2.1 安装

老规矩,在使用前,必须要安装。

安装方式逃不了 pip方式:

pip install pyforest

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

安装完,如果import 导入不报错,就说明安装ok了。

2.2.2 使用

安装完成后,我们就要开车 开撸代码!

睡眠质量不好,就容易打错字

我们不导入pandas、seabornmatplotlib库,直接导入pyforest库来使用。

# -*- coding:utf-8 -*-
# @time   : 2021-07-26
# @author : carl_dj

import  pyforest
#teston.csv是我本地的测试文件
data = pd.read_csv('testone.csv')
print(data)

我们来看下执行结果:

Python:一行代码,导入Python所有库

小屌丝:嘿,鱼哥,别说,还真能执行出来了哈,牛叉了~

小鱼:这才哪到哪,接着看,继续看它的牛叉 厉害之处…

别的不说,就为了支持*棉,我们就来看看国内棉花产量排名,代码如下

# -*- coding:utf-8 -*-
# @time   : 2021-07-26
# @author : carl_dj

import  pyforest

plt.rcparams['font.flamily'] = 'sans-serif'
#用来显示中文标签
plt.rcparams['font.sans-serif'] = ['hiragino sans gb']
#用来正常显示负号
plt.rcparams['axes.unicode_minus'] = false

#设定x轴坐标
x = data.columns.values.tolist()[1:]
numbers_list = data[data['省份'] == '*'].values.tolist[0][1:]
#设定y轴坐标
y = list(map(int,numbers_list))

sns.barplot(x,y)
plt.title('*历年棉花产量(万吨)')
plt.show()

看下运行结果:

Python:一行代码,导入Python所有库

小屌丝:唉我去~ 可以啊。

小鱼:一般般啦~~

小屌丝:鱼哥,那我再问你一下,pyforest有没有提供一些辅助的python库啊,如:os,re,tqdm…

小鱼:看样子,你还是不知道pyforest的厉害~ ~

执行代码:

查看内置库列表数量

import pyforest

print(len(dir(pyforest)))
for i in dir(pyforest):
    print(i)

执行结果

-------------------------
68
gradientboostingclassifier
gradientboostingregressor
lazyimport
onehotencoder
path
randomforestclassifier
randomforestregressor
sparkcontext
tsne
tfidfvectorizer
...

小鱼:小屌丝,怎么样,内置库有68个,这会知道pyforest的厉害了吧~

小屌丝:nice,nice,nice啊 ~

小鱼:一般般啦~

小屌丝:别装x,那pyforest还有什么技能,继续展示。

小鱼:… 巴拉巴拉说一堆(省略十万字)… 等着!!

Python:一行代码,导入Python所有库

pyforest还提供了一些函数来了解库的使用情况:

①返回已导入并且正在使用的库列表

执行代码

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'...]

Python:一行代码,导入Python所有库

小鱼:小屌丝,这回该满足了吧~

小屌丝:满足??不知道我的饭量吗??

小鱼:…你走吧~ 以后不联系的那种!

小屌丝:…

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注的更多内容!

相关标签: Python 导入