python中模块、包、库的区别和使用
模块:就是.py文件,里面定义了一些函数和变量,需要的时候就可以导入这些模块。
包:在模块之上的概念,为了方便管理而将文件进行打包。包目录下第一个文件便是 __init__.py,然后是一些模块文件和子目录,假如子目录中也有 __init__.py,那么它就是这个包的子包了。
常见的包结构:
package_a
├── __init__.py
├── module_a1.py
└── module_a2.py
__init__.py的作用
1. Python中package的标识,不能删除(包其实是一个目录,为了和目录做区别,使用了__init__.py)
2. 定义__all__用来模糊导入(包的调用中介绍)
3. 编写Python代码(不建议在__init__中写python模块,可以在包中在创建另外的模块来写,尽量保证__init__.py简单)
库:具有相关功能模块(包)的集合。这也是Python的一大特色之一,即具有强大的标准库、第三方库以及自定义模块。————
#################################################################################################
模块,包,库的调用

(1)同一目录下的调用(同在一个包的情况)
(2)不同目录下的调用
模块的调用的几种情况
实例讲解
(1)同一目录下的调用(同在一个包的情况)
例如从A2中调用A1:

直接import 模块名
(2)不同目录下的调用
例如从A2中调用B1的情况:

由于import的路径只是标准库以及自己的目录,故在搜索前要把模块所在的目录添加进搜索路径 。然后再import
(3)另外还有一种混合的导入。
这种方式可以不用学习,利用上述方法可以做到。

这种混合导入的方式就是直接在在添加的路径中导入其子目录中模块的方式。
#####################################################################################################
第三方库的导入
https://blog.csdn.net/yz960611/article/details/78538488
这篇博文介绍的很好,比较简单。为防止日后找不到。这里再简要的叙述一下:
https://www.lfd.uci.edu/~gohlke/pythonlibs/
首先在上述网址中下载合适的第三方库,下载合适的版本。其中cp36表示支持python3.6版本
接着把文件放在python的Scripts的路径下,比如D:\python\Scripts
然后在CMD中进入该路径,接着输入:

提示安装成功后,需要找到第三方库的位置(并不是在D:\python\Scripts中)

这样第三方库就可以使用了。
---------------------
作者:qq_42451635
来源:CSDN
原文:https://blog.csdn.net/qq_42451635/article/details/81913272
版权声明:本文为博主原创文章,转载请附上博文链接!
python中模块、包、库的区别和使用的更多相关文章
- python中模块包的离线下载教程
1.简介 当我们进行Python项目的迁移时(例如迁移到另外一台服务器上),如果该服务器要求离线安装, 往往需要我们将项目中的所需模块包进行离线操作. 2.教程 2.1 首先安装pip2pi模块,它可 ...
- 利用Python中的mock库对Python代码进行模拟测试
这篇文章主要介绍了利用Python中的mock库对Python代码进行模拟测试,mock库自从Python3.3依赖成为了Python的内置库,本文也等于介绍了该库的用法,需要的朋友可以参考下 ...
- Python OS模块标准库的系统接口及操作方法
Python OS模块标准库的系统接口及操作方法 os.name 返回当前操作系统名,定义了'posix','nt','mac','os2','ce','java'(我使用win7/python3.1 ...
- 查看python中模块的所有方法
查看python中模块的所有方法 安装的python模块,现将查看方法总结如下 一.CMD命令行下使用pydoc命令 在命令行下运行$ pydoc modules即可查看 二.在python交 ...
- Python中的包ImportError
前言 Python中的包给我提供了很好的代码组织,相似的功能模块放在同一个包内,不仅代码结构清晰,而且调用起来也比较方便(可以用*导入) 但是,我们在刚开始使用Python包的时候总是会遇到导入错误& ...
- [python]关于在python中模块导入问题追加总结
[背景] 最近在写程序时,我使用的eclipse编辑器运行都没有问题,然后部署到自动化环境上却偏偏报找不到相应模块问题,现在对该问题在之前的贴子上追加总结 原帖子:[python]关于python中模 ...
- Python中send()和sendall()的区别
Python中send()和sendall()的区别 估计每个学习Python网络编程的人,都会遇到过这样的问题: send()和sendall()到底有什么区别? send()和sendall()原 ...
- Python中使用第三方库xlrd来写入Excel文件示例
Python中使用第三方库xlrd来写入Excel文件示例 这一篇文章就来介绍下,如何来写Excel,写Excel我们需要使用第三方库xlwt,和xlrd一样,xlrd表示read xls,xlwt表 ...
- python中模块的制作
1.import 模块名 2.from 模块名 import 类名(或方法名或全局变量) 3.from 模块名 import * 导入模块名下的所有类名,方法,全局变量 4.from 模块名 im ...
- python中引入包的时候报错AttributeError: module 'sys' has no attribute 'setdefaultencoding'解决方法?
python中引入包的时候报错:import unittestimport smtplibimport timeimport osimport sysimp.reload(sys)sys.setdef ...
随机推荐
- [DEBUG] spring boot在eclipse中用maven打包成jar访问templates报500错误
更新:打war包的话只要把html文件放在resources/templates下即可,根本不需要放外面. 配置application.yml和templates放外面这种做法,打war包确实不行. ...
- Windows Eclipse Scala的入门HelloWorld
[学习笔记] Windows Eclipse Scala的入门HelloWorld 有关带scala版本的eclipse4.7的下载, 你可以直接去: http://scala-ide.org/dow ...
- 封装PHP增删改查方法
<?php class sqlModel{ public $db; public function __construct(){ try{ $dbms='mysql';//数据库类型 $dbNa ...
- opencv实现人脸识别(二) 人脸图像采集模块
这一步我们开始搭建第一个模块,用来检测到图像中的人脸位置,并将它拍下来保存在指定路径 流程图: 代码实现: import cv2 def pic(cam): # 调用笔记本内置摄像头,所以参数为0,如 ...
- DaemonSet和StatefulSet
DaemonSet 的使用 通过该控制器的名称我们可以看出它的用法:Daemon,就是用来部署守护进程的,DaemonSet用于在每个Kubernetes节点中将守护进程的副本作为后台进程运行,说白了 ...
- 【转载】Jmeter接口测试+压力测试
jmeter是apache公司基于java开发的一款开源压力测试工具,体积小,功能全,使用方便,是一个比较轻量级的测试工具,使用起来非常简单.因为jmeter是java开发的,所以运行的时候必须先要 ...
- Redis 消息队列 初体验
队列之生产者.消费者模式 using System; using System.Threading; using NServiceKit.Redis; namespace ConsoleApplica ...
- LINQ 多条件join on
var tmp = from a in DT1.AsEnumerable() join b in DT2.AsEnumerable() on new { bm = a.Field<string ...
- HTML类
class Html: def __init__(self,name): self.name = name @staticmethod def full_name(): print('全称:Hype ...
- 安卓开发之HttpURLConnection类和Handler类的使用
package com.lidaochen.test; import java.io.ByteArrayOutputStream; import java.io.InputStream; public ...