python基础——python包【创建和导入,下载第三方包】

📝前言:
在上一篇文章python基础——模块中,我们讲解了有关python模块的相关知识,这篇文章我们进一步讲解用于储存多个模块文件的python包:
1,什么是python包
2,如何创建和导入python包
3,第三方包

🎬个人简介:努力学习ing
📋个人专栏:C语言入门基础以及python入门基础
🎀CSDN主页 愚润求学
🌄每日鸡汤:当你想要放弃的时候,想想,是什么让你坚持到了现在


文章目录

  • 一,什么是python包
  • 二,创建和导入python包
    • 1,创建
    • 2,导入
      • (1)普通导入
      • (2)_ _all_ _ 和 * 来导入
  • 三,下载第三方包
    • 1,命令栏下载
    • 2,pycharm里下载

一,什么是python包

下面是我们的目录栏:
在这里插入图片描述
箭头所指向的那个文件就是python包
所以说:
表层上:python包就是一个文件夹,里面存放的是一个个模块文件,这些文件里面写的就是我们实现的功能
逻辑上:python包的本质还是模块

python包的特点:
1,外观上:这个文件夹多了个圈
2,文件夹里面的文件:当我们创建python包的时候,__init__.py文件是必须存在的(一般情况下,会自动帮我们添加),有了这个文件才代表这个文件夹是一个python包。其他以.py后缀结尾的文件就是我们写好的模块文件
(即:python模块文件+__init__.py文件构成的文件夹就是python包)

二,创建和导入python包

1,创建

pycharm里面创建python包的基本步骤:
在这里插入图片描述
如图所示:右击左边的栏目——点击新建——再点击python软件包
当我们创建好后,__init__.py文件会被自动创建
在这里插入图片描述

2,导入

python包的本质是模块,所以其实导入python包和导入模块差不多,有了python包只是相当于多了一层而已,我们用.来控制层级

(1)普通导入

示例:
假设我们创建好了一个python包,并在每个模块文件里面写好了功能:
在这里插入图片描述
使用python包示例:

from my_package.module1 import print1
# 从my_package的module1 导入print1功能
print1()   # 输出结果:我是module1# 当然,也可以导入整个模块
# from my_package import module1
# (只要符合规则,可以有多种写法)

(2)_ all _ 和 * 来导入

我们可以在__init__.py文件中的规定__all__,这和上一篇文章python——模块里面讲__all__一样,可以控制*导入的模块
语法(在__init__.py文件里面写):

__all__ = [模块名1, 模块名2,……]

这时候,我们import*,导入的就是我们在__all__里面写的文件了
(注意:如果没有写__all__,直接import*导入全部模块文件是不行的)
在这里插入图片描述
具体的使用方式和上一篇文章讲述的类似,就不过多展示了

三,下载第三方包

1,命令栏下载

语法:

在这里插入图片描述
但是有时候,下载速度会很慢,这时候我们可以使用清华大学提供的一个网址:
https://pypi.tuna.tsinghua.edu.cn/simple
只需要在后面输入这个网址就行:
在这里插入图片描述
安装好以后,想看看有没有安装好,只需要导入就行,没有异常就是安装好了:
在这里插入图片描述
我们还可以用pip list来查看我们所安装的第三方包:
在这里插入图片描述

2,pycharm里下载

在这里插入图片描述
(此图片来自B站黑马程序员)
下载时选项options也可以指定网站,和上面输的一样(清华大学的网站)


🌈我的分享也就到此结束啦🌈
要是我的分享也能对你的学习起到帮助,那简直是太酷啦!
若有不足,还请大家多多指正,我们一起学习交流!
📢公主,王子:点赞👍→收藏⭐→关注🔍
感谢大家的观看和支持!祝大家都能得偿所愿,天天开心!!!

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

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

相关文章

选择排序解读

在计算机科学中,排序算法是一种将数据元素按照某种顺序排列的算法。今天,我们要探讨的是选择排序(Selection Sort),这是一种简单直观的排序方法,通过不断选择剩余元素中的最小(或最大&#xff0…

SpringBoot + Dobbo + nacos

SpringBoot Dobbo nacos 一、nacos https://nacos.io/zh-cn/docs/quick-start.html 1、下载安装包 https://github.com/alibaba/nacos/releases/下载后在主目录下,创建一个logs的文件夹:用来存日志 2、启动nacos 在bin目录下打开cmd运行启动命令&a…

2024年DeFi的四大主导趋势:Restaking、Layer3、AI和DePin

DeFi(去中心化金融)行业在2024年将继续呈现快速增长的势头,驱动这一增长的主要因素将是四大主导趋势:Restaking、Layer3、AI和DePin。这些趋势将推动DeFi生态系统的发展,为用户提供更多的机会和创新。 趋势1&#xff…

ERA拓展之旅:2024香港Web3峰会聚焦全球Web3发展

2024年香港Web3大型峰会是一次令人难忘的体验。这次峰会吸引了来自世界各地的Web3爱好者和从业者齐聚一堂,共同探讨着Web3的未来发展方向与机遇。在这个热情洋溢的氛围中,展现了对Web3的热情,分享彼此的见解和理念,探讨了未来的行…

性能优化-01

当看到性能指标时,你会首先想到什么呢?我相信 “高并发” 和 “响应快” 一定是最先出现在你脑海里的两个词,而它们也正对应着性能优化的两个核心指标—— “吞吐” 和 “延时” 。这两个指标是从应用负载的视角来考察性能,直接影…

Chatgpt掘金之旅—有爱AI商业实战篇|SEO 咨询业务|(十七)

演示站点: https://ai.uaai.cn 对话模块 官方论坛: www.jingyuai.com 京娱AI 一、AI技术创业在SEO 咨询业务有哪些机会? 人工智能(AI)技术作为当今科技创新的前沿领域,为创业者提供了广阔的机会和挑战。随…

springboot+vue高校贫困生资助勤工俭学管理系统python

本次开发一套贫困生资助管理系统有管理员和用户两个角色。管理员功能有个人中心,学生管理,院校管理,贫困申请管理,资助项目管理,资助申请管理,资助发放管理,勤工俭学管理,岗位申请管…

CMake构建OpenCv并导入QT项目过程中出现的问题汇总

前言 再此之前请确保你的环境变量是否配置,这是总共需要配置的环境变量 E:\cmake\bin E:\OpenCv\opencv\build\x64\vc15\bin F:\Qt\Tools\mingw730_64\bin F:\Qt\5.12.4\mingw73_64\bin 问题一: CMake Error: CMake was unable to find a build program…

Linux网络 基础概念

目录 背景知识 互联网的发展 局域网和广域网 网络拓扑 网络协议栈 协议的概念 网络协议的分层 网络与操作系统的联系 网络传输的基本流程 IP地址和MAC地址 以太网通信 数据包的封装和分用 跨网段传输 背景知识 互联网的发展 计算机网络是计算机技术和通信技术相…

【Android Studio报错】:* What went wrong:Out of memory. Java heap space

项目场景: 今天,刚打开自己的安卓项目发现报错: 报错: * What went wrong: Out of memory. Java heap space Possible solution: - Check the JVM memory arguments defined for the gradle process in: gradle.properties in…

路由器端口映射是什么意思?

路由器端口映射是一种网络配置技术,在私有网络中允许外部网络访问特定的服务或应用程序。通过将路由器的端口映射到内部客户端设备,可以实现从公共网络访问内部网络资源的目的。 天联组网介绍 天联是一款异地组网内网穿透产品,由北京金万维科…

网工基础协议——IP地址

IP地址的概念: IP 地址是我们进行TCP/IP通讯的基础,每个连接到网络上的计算机都必须有一个!P地址。我们目前使用的IP地址是32位的,通常以点分十进制表示。例如:192.168.0.181。IP地址的格式为: IP地址 网络地址 主机地址 或者 |P地址主机地…

windows ffmpeg7 通过rtsp拉取h265裸流

点击下边那个链接会转到github 下载完成后,添加include、lib到工程。 添加头文件: extern "C" { #include "libavcodec/avcodec.h" #include "libavformat/avformat.h" #include "libavformat/avio.h" #inclu…

【opencv】示例-detect_blob.cpp

// 导入所需的OpenCV头文件 #include <opencv2/core.hpp> #include <opencv2/imgproc.hpp> #include <opencv2/highgui.hpp> #include <opencv2/features2d.hpp> // 导入向量和映射容器 #include <vector> #include <map> // 导入输入输出…

微软卡内基梅隆大学:无外部干预,GPT4等大语言模型难以自主探索

目录 引言&#xff1a;LLMs在强化学习中的探索能力探究 研究背景&#xff1a;LLMs的在情境中学习能力及其重要性 实验设计&#xff1a;多臂老虎机环境中的LLMs探索行为 实验结果概览&#xff1a;LLMs在探索任务中的普遍失败 成功案例分析&#xff1a;Gpt-4在特定配置下的探…

【QT入门】Qt自定义控件与样式设计之qss的加载方式

往期回顾 【QT入门】 Qt自定义控件与样式设计之QPushButton点击按钮弹出菜单-CSDN博客 【QT入门】Qt自定义控件与样式设计之QProgressBar用法及qss-CSDN博客 【QT入门】 Qt自定义控件与样式设计之QSlider用法及qss-CSDN博客 【QT入门】Qt自定义控件与样式设计之qss的加载方式 …

JDBC看这一篇就够了

JDBC核心技术 第1章&#xff1a;JDBC概述 1.1 数据的持久化 持久化(persistence)&#xff1a;把数据保存到可掉电式存储设备中以供之后使用。大多数情况下&#xff0c;特别是企业级应用&#xff0c;数据持久化意味着将内存中的数据保存到硬盘上加以”固化”&#xff0c;而持久…

centos7上docker搭建vulhub靶场

1 vulhub靶场概述 VulHub是一个在线靶场平台&#xff0c;提供了丰富的漏洞环境供安全爱好者学习和实践。 该平台主要面向网络安全初学者和进阶者&#xff0c;通过模拟真实的漏洞环境&#xff0c;帮助用户深入了解漏洞的成因、利用方式以及防范措施。 此外&#xff0c;VulHub还…

Kubernetes学习笔记7

使用kubeadm部署Kubernetes集群方法 使用kubernetes部署单节点Master节点K8s集群。 在实际生产环境中&#xff0c;是不允许单master节点的&#xff0c;如果单master节点不可用的话&#xff0c;当导致我们的K8s集群无法访问。 可以使用kubeadm将单master节点升级为多master节点…

智能制造六大核心发展方向,驱动企业数字化转型

在制造过程中&#xff0c;智能制造展现出非凡的活力&#xff0c;它使人与智能机器的协同工作成为可能。这不仅将制造自动化的概念提升至一个新的层次&#xff0c;更将其扩展至柔性化、智能化和高度集成化的领域。通过这样的革新&#xff0c;我们得以实现数字化智能工厂的落地生…