懒人福利:只需一行代码,导入所有的 Python 库

news2024/12/22 15:15:04

前言

今天给大家介绍一个懒人 Python 库—— Pyforest 。

使用一行代码,就能导入所有的 Python 库(本地已经安装的)。

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

(文末送读者福利)

/ 01 / 介绍

Python 因为有着成千上万个功能强大的开源库,备受大家的欢迎。

目前,通过 PyPl 可以导入超过 23.5 万个 Python 库,数量庞大。

在大家平常的实践当中,一般都是需要导入多个库或者框架来执行任务。

而且每当新建一个程序文件时,都需要根据自己的需求导入相关的库。

如果是相同类型的任务,比如想做一个数据可视化的小项目,可能会一直使用到某个库。

如此,反复编写同一条 import 语句,就算是复制粘贴,也会感觉到麻烦,这时 Pyforest 库就可以上场了。

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

在进行数据可视化的时候,一般都需要导入多个库,比如 pandas 、 numpy 、 matplotlib 等等。

使用了 Pyforest ,每个程序文件中就不需要导入相同的 Python 库,而且也不必使用确切的导入语句。比如下面这行代码,就可以省略掉。

from sklearn.ensemble import RandomForestClassifier

在你使用 import 语句导入 Pyforest 库后,你就可以直接使用所有的 Python 库。

import pyforestdf = pd.read_csv(‘test.csv’)print(df)

你使用的任何库都不需要使用 import 语句导入, Pyforest 会为你自动导入。

只有在代码中调用库或创建库的对象后,才会导入库。如果一个库没有被使用或调用, Pyforest 将不会导入它。

(文末送读者福利)

/ 02 / 使用

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

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

安装成功后,使用 import 语句导入它。

现在,你可以直接使用相关的 Python 库,无需编写 import 导入。先以 jupiter notebook 为例,我们没有导入 pandas 、 seaborn 和 matplotlib 库,但是我们可以通过导入 Pyforest 库直接使用它们。

在这里插入图片描述
读取数据,这个是国内棉花产量排行前三的省份,新疆全国第一(数据来源:国家统计局)。

在这里插入图片描述
那么 Pyforest 可以导入所有库吗?

目前这个包包含了大部分流行的 Python 库,比如

pandas as pdNumPy as npmatplotlob.pyplot as pltseaborn as sns

除了这些库之外,它还提供了一些辅助的 Python 库,如 os 、 tqdm 、 re 等。如果你想查看库列表,可以使用 dir(pyforest)进行查看,内置的是 68 个库。

import pyforest
print(len(dir(pyforest)))for i in dir(pyforest):         print( i )     -------------------------68GradientBoostingClassifierGradientBoostingRegressorLazyImportOneHotEncoderPathRandomForestClassifierRandomForestRegressorSparkContextTSNETfidfVectorizer...

如果没有的话,可以进行自定义添加,在主目录中的文件写入 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 re

import requests as req~             ~  "~/.pyforest/user_imports.py"7L, 129C

这回我们在 PyCharm 中来实验一下。

在这里插入图片描述
发现 PyCharm 的自动补全的功能失效了,看来这个库还是比较适合 jupyter notebook (自动补全代码还可以使用)。

除了上面这个地方可以自定义添加,还可以在库的 _import.py 文件中添加。

此处以 Pyechars 为例,缩写为 chart 。

在这里插入图片描述
可视化代码如下。

在这里插入图片描述
新疆棉花产量年年上升,其它省份年年下降…

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

只有代码中有使用到的库,程序才会 import 进去,否则不会导入的哦!

读者福利:知道你对Python感兴趣,便准备了这套python学习资料

对于0基础小白入门:

如果你是零基础小白,想快速入门Python是可以考虑的。

一方面是学习时间相对较短,学习内容更全面更集中。
二方面还可以找到适合自己的学习方案

包括:Python web开发,Python爬虫,Python数据分析,人工智能、机器学习等学习教程。带你从零基础系统性的学好Python!

零基础Python学习资源介绍

👉Python学习路线汇总👈

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。(学习教程文末领取哈)

👉Python必备开发工具👈

温馨提示:篇幅有限,已打包文件夹,获取方式在:文末

👉Python学习视频600合集👈

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

👉实战案例👈

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

👉100道Python练习题👈

检查学习结果。

👉面试刷题👈



在这里插入图片描述

资料领取

这份完整版的Python全套学习资料已为大家备好,朋友们如果需要可以微信扫描下方二维码添加,输入"领取资料" 可免费领取全套资料【有什么需要协作的还可以随时联系我】朋友圈也会不定时的更新最前言python知识。
在这里插入图片描述

这世界上赚钱成本最低的就是:用知识投资大脑

人生什么时候学习都不晚,晚的是你一直想学却一直没有行动,而导致大量内耗

最后祝你学习愉快

好文推荐

了解python的前景:https://blog.csdn.net/weixin_49891576/article/details/127187029

python有什么用:https://blog.csdn.net/weixin_49891576/article/details/127125308

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/32472.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

paper 阅读: An introduction to ROC analysis

发布于2005年,附论文链接如下: https://ccrma.stanford.edu/workshops/mir2009/references/ROCintro.pdf 之前一直都是从各种博客上了解ROC的,最近才看到这一篇paper。 写在前面 用 True(T)和 False(F&…

BGP进阶:BGP 基础实验配置

实验拓扑 实验需求 R1、R2、R3属于AS123,R4属于AS 400;AS123内的R1、R2、R3运行OSPF,通告各自直连接口,注意OSPF域的工作范围;R3-R4之间建立eBGP邻居关系,R2暂时不运行BGP,R1-R3之间建立iBGP邻…

MCE | D-萤光素 Protocol 在手,生物发光检测无忧!

■ Q: D-萤光素的作用原理 D-萤光素 (D-Luciferin) 是萤火虫萤光素酶 (Firefly Luciferase) 的化学发光底物。在ATP 和萤光素酶存在下,萤光素能够被氧化发光 (图 1)。当萤光素过量时,发光亮度与萤光素酶浓度呈正相关。通过萤光素/萤光素酶生物发光体系&…

小程序容器技术加快推动国产操作系统“上车”

计算机是当前乃至未来的基础工具,而负责管理计算机硬件与软件资源、提供必须的人机交互机制的操作系统无疑是整个计算机的核心系统软件。 可以说,操作系统是当前一个国家提升综合实力过程中必须要攻克、掌握的核心技术之一。 国产操作系统多为以Linux为…

猫狗肠道菌群—“主子们”的健康新领域

随着生活水平提升,我国养宠人士逐年增多。数据显示,我国城镇养宠人士达到6844万多人,且仍在不断增长。 其中养猫人群数占比59.5%,养狗人群数占比51.7%,养水族类占比8.3%,养爬行类宠物的占比为5.8%&#xff…

Linux 文件操作(三) —— 获取并打印某个文件的属性(文件类型、执行权限、文件大小)

目录 1、获取文件属性 stat / lstat / fstat (1) 参数 path (2) 参数 buf (3) 返回值 2、获取并打印某个文件的属性 (1) 获取文件类型 (2) 获取文件权限 (3) 获取文件大小 (4) 获取上一次的访问时间 (5) 最终代码 1、获取文件属性 stat / lstat / fstat stat / lsta…

[附源码]java毕业设计疫情防控期间网上教学管理

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

数据分析可视化之模型介绍

一 前言 “数据分析可视化”这条术语实现了成熟的科学可视化领域与较年轻的信息可视化领域的统一。 数据分析可视化:是指将大型数据集中的数据以图形图像形式表示,并利用数据分析和开发工具发现其中未知信息的处理过程。 数据可视化已经提出了许多方法&…

【软件工程导论】1.软件过程模型

软件过程模型什么是软件过程模型包括瀑布模型特点演化模型特点增量模型特点原型模型类型使用策略废弃策略追加策略螺旋模型特点什么是软件过程模型 又叫作软件开发模型、软件生存周期模型 包括 瀑布模型 每一阶段都会生成文档 特点 缺乏灵活性在交互使用时才能发现问题&…

用HTML+CSS仿网易云音乐网站(6个页面)_实训素材

⛵ 源码获取 文末联系 ✈ Web前端开发技术 描述 网页设计题材,DIVCSS 布局制作,HTMLCSS网页设计期末课程大作业 | 音乐网页设计 | 仿网易云音乐 | 各大音乐官网网页 | 明星音乐演唱会主题 | 爵士乐音乐 | 民族音乐 | 等网站的设计与制作 | HTML期末大学生网页设计作…

ubuntu 安装 k8s 记录 2 初始化

ubuntu 安装 k8s 记录 2 初始化初ubuntu 安装 k8s 记录初始化初始化前置条件查询本机 ip需要docker初始化报错禁止 Swap 分区禁用 CRI重启 containerd重置节点初始化初始化报错设置驱动向 docker 看齐如果遇到出错要重新初始化,先执行下面两个步骤关闭 swap 并重新设…

业务增长遇到瓶颈?这些用大数据驱动业务增长的方法你一定要看看

目录 前言 一、海量数据处理方案 1.1 大数据存储 1.1.1 传统数据存储 1.1.2 云大数据仓库 1.2 数据BI快速展示 1.2.1大数据BI产业链结构分析 1.2.2 华为一站式大数据BI方案 前言 随着大数据与云原生的快速发展融汇交互,各技术领域又将来临新一波迅雷之势的挑…

数据增强

在训练数据拆分上评估数据增强,以增加高质量训练样本的数量。 Intuition 通常希望通过数据扩充来增加训练数据的规模和多样性。它涉及使用现有样本生成合成但真实的示例。 拆分数据集。想首先拆分数据集,因为如果允许将生成的样本放置在不同的数据拆分中…

HTML+CSS+JS环境保护网页设计期末课程大作业 web前端开发技术 web课程设计 网页规划与设计

🎀 精彩专栏推荐👇🏻👇🏻👇🏻 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业…

FEDformer 代码分析(2)

首先总结一下FEDformer里面这些这些东西, mean的尺寸是:(1,96,7) seasonal_init的尺寸是:(1,144,7) trend_init的尺寸是:(1,144,7) zeros的尺寸是&#x…

[附源码]java毕业设计疫苗接种管理系统

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

四、图片特效

目录一、灰度处理二、颜色反转三、马赛克四、毛玻璃五、图片融合六、边缘检测与浮雕效果1 - 边缘检测2 - 浮雕效果七、颜色映射八、油画效果一、灰度处理 使用openCV的imread方法实现 import cv2img0 cv2.imread(image0.jpg, 0) img1 cv2.imread(image0.jpg, 1) print(img0…

嵌入式学习笔记(1)基本知识、C语言常用关键字、OLED

STM32是ST公司基于ARM Cortex-M内核开发的32位微控制器 STM32常应用在嵌入式领域,如智能车、无人机、机器人、无线通信、物联网、工业控制、娱乐电子产品等 STM32功能强大、性能优异、片上资源丰富、功耗低,是一款经典的嵌入式微控制器 STM32F103C8T6 系…

windows + anaconda 安装PySpark3.0.1

1、背景 Spark作为分布式内存计算框架,可以广泛应用在数据处理、分析等应用场景。因此,希望借助Spark高性能的处理项目中的数据,搭建此开发环境,深入了解Spark的处理能力与实现机制。 2、开发环境 在windows10上使用Anaconda作为…

微信小程序使用github协作

微信小程序github协作所需相关设置 1.点击开发工具右上角的版本管理初识化本地仓库: 2.去github新建一个仓库,复制仓库的ssh的url添加到仓库设置中的远程连接中: 3.在仓库设置中的通用里设置好自己的用户名和邮箱 4.生成ssh key 由于我们使…