• 技术文章 >头条

    Python不用import也能使用常用库了!!!

    爱喝马黛茶的安东尼爱喝马黛茶的安东尼2020-01-10 17:59:21原创3271

    还记得入门Python数据分析时经常会import几个库,下面这几个可谓是入门学习时的四大护法,Python数据处理和可视化常会用的工具。

    e4e68a45b84c8dae79e21958f689577.png

    不知道大家有没有遇到过这样一个问题,每次重新开启一个建模流程或者分析过程时,会重新敲一遍import或者将之前的import代码copy进去。虽然已经用的滚花烂熟了,但是确耗费不必要的时间。

    本篇给大家介绍一个可以偷懒的python库:pyforest

    一个示例

    c50400e48c6a92d759f35006e28eda4.png

    看到了吧,开头什么都没import,依然可以正常使用常用库。

    安装

    需要安装Python3.6以上的版本,然后终端运行:

    pip install pyforest

    使用方法

    非常简单!!!

    一行代码就可以解决。

    from pyforest import *

    如果使用Jupyter或IPython,甚至可以跳过此行,因为pyforest会将其自身添加到自动启动中。

    而且,完成脚本后,可以通过以下方式导出所有导入语句:

    active_imports()

    通过这个指令,我们就可以看到脚本所涉及到的全部已经被我省略的库。

    好了,你可能会问,如果需要的库不在pyforest中怎么办?

    首先,pyforest支持大部分流行的数据科学库,比如pandas,numpy,matplotlib,seaborn,sklearn,tensorflow等等,以及常用的辅助库如os,sys,re,pickle等。

    ### Data Wranglingpd = LazyImport("import pandas as pd")np = LazyImport("import numpy as np")dd = LazyImport
    ("from dask import dataframe as dd")SparkContext = LazyImport("from pyspark import SparkContext")load_workbook = 
    LazyImport("from openpyxl import load_workbook")### Data Visualization and Plottingmpl = LazyImport("import 
    matplotlib as mpl")plt = LazyImport("import matplotlib.pyplot as plt")sns = LazyImport("import seaborn as sns")py 
    = LazyImport("import plotly as py")go = LazyImport("import plotly.graph_objs as go")px = LazyImport("import plotly.
    express as px")dash = LazyImport("import dash")bokeh = LazyImport("import bokeh")alt = LazyImport("import altair as 
    alt")pydot = LazyImport("import pydot")# statisticsstatistics = LazyImport("import statistics")### Machine
     Learningsklearn = LazyImport("import sklearn")OneHotEncoder = LazyImport("from sklearn.preprocessing import 
     OneHotEncoder")TSNE = LazyImport("from sklearn.manifold import TSNE")train_test_split = LazyImport("from 
     sklearn.model_selection import train_test_split")svm = LazyImport("from sklearn import svm")
     GradientBoostingClassifier = LazyImport(    "from sklearn.ensemble import GradientBoostingClassifier")
     GradientBoostingRegressor = LazyImport(    "from sklearn.ensemble import GradientBoostingRegressor")
     RandomForestClassifier = LazyImport(    "from sklearn.ensemble import RandomForestClassifier")
     RandomForestRegressor = LazyImport("from sklearn.ensemble import RandomForestRegressor")
     TfidfVectorizer = LazyImport(    "from sklearn.feature_extraction.text import TfidfVectorizer")# TODO: 
     add all the other most important sklearn objects# TODO: add separate sections within machine learning viz. 
     Classification, Regression, Error Functions, Clustering# Deep Learningtf = LazyImport("import tensorflow as tf")
     keras = LazyImport("import keras")# NLPnltk = LazyImport("import nltk")gensim = LazyImport("import gensim")
     spacy = LazyImport("import spacy")re = LazyImport("import re")### Helpersys = LazyImport("import sys")
     os = LazyImport("import os")re = LazyImport("import re")glob = LazyImport("import glob")Path = LazyImport
     ("from pathlib import Path")pickle = LazyImport("import pickle")dt = LazyImport("import datetime as dt")tqdm 
     = LazyImport("import tqdm")

    其次,如果真的没有也没关系,pyforest支持向其中添加库。操作方法也很简单,找到pyforest库的user_imports.py文件,然后添加一个语句就好了,比如像下面这样:

    ################################ User-specific imports ################################# 
    You can save your own imports in ~/.pyforest/user_imports.py# Please note: imports in ~/.pyforest/user_imports.py 
    take precedence over the# imports above.

    所以我们可以根据平时自己的使用习惯添加一套属于自己的万能import,爽歪歪了。

    有的同学可能还会问,所有的库添加进入运行速度会不会变慢?

    答案是不会,因为只有你后面真正使用了到了pyforest里的包含的库,程序才会真正import,否则不会。

    Python学习网,有大量免费的Python视频教程,欢迎大家学习!

    本文转自:https://www.jianshu.com/p/df09bb80a49c

    专题推荐:python import 库
    上一篇:Github上值得推荐的Python工具 下一篇:11个最佳的Python编译器和解释器

    相关文章推荐

    • python的import语句使用方法• python的import不能用怎么解决• python的import错误是什么原因• python中使用import导入re库失败怎么办

    全部评论我要评论

    © 2021 Python学习网 苏ICP备2021003149号-1

  • 取消发布评论
  • 

    Python学习网