什么是包?

要想知道什么是包,得先了解一下模块的概念。

模块是一个包含所有你定义的函数和变量的文件,其后缀名是 .py。模块可以被别的程序引入,以使用该模块中的函数等功能。

知道了模块,那紧接着看看包:

包是一种管理 Python 模块命名空间的形式,采用"点模块名称"。

比如一个模块的名称是 A.B, 那么他表示一个包 A 中的子模块 B 。

就好像使用模块的时候,你不用担心不同模块之间的全局变量相互影响一样,采用点模块名称这种形式也不用担心不同库之间的模块重名的情况。

所以要将一个文件夹里的所有 python 代码作为一个包给其他程序用, 首先在这个文件夹里面创建一个名为 init.py 的空文件。

touch __init__.py

在这个文件夹里的多个 python 文件 , 它们可能会需要对其他同级的 python 模块进行引用。 一般, 只需要在脚本开头 import 一下就可以了。不过, 如果整个文件夹需要作为包给其他程序用, import 的时候就会有一个路径问题, 所以模块内 import 的话需要带上路径,写成

from . import 同级其它模块名

在这个文件夹外部某个程序要引入这个包内的某个模块,需要在那个程序里面写:

from 包名 import 模块名

python导入自定义模块_Python3 导入自定义的包相关推荐

  1. python不同层级模块的导入和文件的读写

    python不同层级模块的导入和文件的读写(2-201812103) 1 python 在不同层级目录import 模块的方法 2 python中文件的读写 1 python 在不同层级目录impor ...

  2. python中外部模块不用导入可以直接使用吗_python引入导入自定义模块和外部文件...

    python引入导入自定义模块和外部文件:项目中想使用以前的代码,或者什么样的需求致使你需要导入外部的包. 如果是web 下,比如说django ,那么你新建一个app,把你需要导入的说用东东,都写到 ...

  3. python怎么导入os模块_python3中OS模块

    os模块 OS模块简单的来说它是一个Python的系统编程的操作模块,可以处理文件和目录这些我们日常手动需要做的操作. 可以查看OS模块的帮助文档: import os:#导入os模块 help(os ...

  4. python模块导入_Python模块及其导入

    一.模块 1.模块的定义: 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码就相对较少, 很多编程语言都采用这种组织代码的方式.在Python中,一个.py文件 ...

  5. python初学-下载模块后导入失败(windows)

    我是python初学者,问题很多还有不明白的,以下是我的个人理解,如果思考不对,希望各位大佬帮忙指正!感谢 我使用的是pycharm社区版,在pycharm下载好模块后,导入requests模块依然爆 ...

  6. (更新时间)2021年3月26日 python基础知识(模块的导入)

    模块 <1>Python中的模块 在Python中有一个概念叫做模块(module),这个和C语言中的头文件以及Java中的包很类似,比如在Python中要调用sqrt函数,必须用impo ...

  7. python中的模块_python3.0中重载模块

    在python中,每一个以 .py结尾的Python文件都是一个模块.其他的文件可以通过导入一个模块来读取该模块的内容.导入从本质上来讲,就是载入另一个文件,并能够读取那个文件的内容.一个模块的内容通 ...

  8. python中自定义模块导入飘红_hadoop streaming 中跑python程序,自定义模块的导入

    今天在做代码重构,以前将所有python文件放到一个文件夹下,上传到hadoop上跑,没有问题:不过随着任务的复杂性增加,感觉这样甚是不合理,于是做了个重构,建了好几个包存放不同功能的python文件 ...

  9. python中re模块怎么导入_python如何导入re模块

    正则表达式是一个特殊的字符序列,能方便的检查一个字符串是否与某种模式匹配.re模块使得python拥有全部的正则表达式功能. 正则表达式导入方法import re 在python中默认采用的是贪婪模式 ...

最新文章

  1. 创业计划书模板(周鸿祎口述)
  2. c语言编程题及答案-难,C语言常见编程题及答案40题
  3. 厉害!84 行 JavaScript 代码实现塔式堆叠游戏
  4. python-django框架中使用docker和elasticsearch配合实现搜索功能
  5. java after 函数_Java中关于Date的before函数和after函数的使用
  6. 常见的无线传感器数据采集传输系统的三种组网
  7. flink的watermark参考配置
  8. 韩信大招:一致性哈希
  9. 移动端 H5 分屏页面适配问题--设计稿比例与设备宽高比例不同
  10. ARMs3c2440开发板挂接NFS服务
  11. GCC 常见参数配置
  12. google python代码规范_Python代码这样写才规范优雅! (二)
  13. mysql的sum函数 如何设置默认值_mysql使用sum()出现null的问题,各种总结
  14. Java监控MongoDB空间使用量、连接数
  15. 秒懂 this(带你撸平this)
  16. python3 爬虫
  17. 神策分析 1.13 版本用户分群全新升级,为企业打磨­­­­­­­­­精细化运营基石
  18. xlsx模块 前端_前端使用SheetJS的xlsx.js实现excel表格生成
  19. 日记侠:要赚钱千万别多想立刻开干
  20. Crosses and Crosses (Multi-SG+打表 博弈)

热门文章

  1. Hacker News热文:请停止学习框架,学习领域驱动设计(DDD)(获500个点赞)
  2. 使用自定义DelegatingHandler编写更整洁的Typed HttpClient
  3. gRPC in ASP.NET Core 3.x -- Protocol Buffer(3)更新消息类型
  4. 小白开学Asp.Net Core《四》 —— 使用AspectCore-Framework
  5. 你可以保持沉默,但你所说的一切都将成为呈堂证供——浅谈Azure WORM保护
  6. ASP.NET Core - 基于IHttpContextAccessor实现系统级别身份标识
  7. ASP.NET Core 生成验证码
  8. 微软发布Azure Service Fabric Mesh公开预览版
  9. 【开源】OSharpNS,轻量级.net core快速开发框架发布
  10. 用ASP.NET Core 2.1 建立规范的 REST API -- 缓存和并发