15、python之导入模块
一、什么是模块?
模块本质是一个py文件,我们可以通过关键字import将py文件对象导入到当前名称空间。
二、导入模块
1、import module
2、from module import object
import导入动作一共包含两个部分:①把import后面跟的对象导入到当前名称空间;②导入的同时会把对象的代码执行一次。这也是为什么我们的模块测试代码写在if __name__ == "__main__" 语句后面的原因:如果py文件作为主文件在运行时,文件的__name__ == "__main__";文件是作为模块导入到其他py文件的名称空间的时候,模块的__name__是模块名。
示例1:导入就是把import后面的对象引入当前名称空间

示例2:模块作为文件运行时__name__

示例3:文件被导入时的__name__是文件名

三、包
当我们写出了可重用的模块变得越来越多时,我们自然而然就会想把具有相同用途的模块分门别类。就像我们硬盘中会把学习资料、电影、音乐分别用不同命名的文件夹分开储存一样。包就是起到这么一种作用的”特殊“目录:把具有相同用途的模块储存在一起的目录。
包与我们普通目录不同的一点就是,包的下面必定有一个__init__.py文件,即使这个文件什么内容也没有,它是代表了这个包本身。
示例:

四、导入包中的模块
导入包中的模块我们一般用from...import语句。
示例:

注意:如果是用import语句导入包中的模块,虽然会把模块中的代码执行,但实际导入到当前名称空间的只是包对象。所以导入包中的模块一般用from...import语句。
示例:

15、python之导入模块的更多相关文章
- python有三种导入模块的方法(转)
原文:http://www.cnblogs.com/allenblogs/archive/2011/11/15/2055149.html python有三种导入模块的方法 其一, import mod ...
- python中导入模块的本质, 无法导入手写模块的解决办法
最近身边一些朋友发生在项目当中编写自己模块,导入的时候无法导入的问题. 下面我来分享一下关于python中导入模块的一些基本知识. 1 导入模块时寻找路径 在每一个运行的python程序当中,都维护了 ...
- Python 动态导入模块
动态导入模块 目录结构: zhangsandeMacBook-Air:1110 zhangsan$ tree . . ├── lib │ └── aa.py ├── test1.py lib目录下 ...
- Python关于导入模块的一些感想:
写项目的时候,碰到这种情况 程序业务为core,里面有两个目录,core1 和core2 core1中有三个模块,business main main1 程序入口为bin目录下的project ...
- python动态导入模块——importlib
当在写代码时,我们希望能够根据传入的选项设置,如args.model来确定要导入使用的是哪个model.py文件,而不是一股脑地导入 这种时候就需要用上python的动态导入模块 比如此时文件结构为: ...
- python基础--导入模块
一,import的使用1, 模块就是一组功能的集合体,我们的程序可以导入模块来复用模块中的功能一个模块就是包含了一组功能的python文件,例如demo.py 可以通过import来使用这个文件定义d ...
- python中导入模块的注意点
1.import 和 from import 的区别 import module导入模块:语句执行完后会创建一个新的命名空间,在该命名空间中执行相应的函数.执行时,需要的变量.函数和类名前需要加 ...
- python控制流-导入模块
一.模块 1.含义 Python 程序可以调用一组基本的函数,这称为“内建函数”,包括你见到过的 print().input()和 len()函数.Python 也包括一组模块,称为“标准库”.每个模 ...
- python改变导入模块中的变量的问题
Python中循环函数1调用函数2,函数2中import了一个模块,函数1: def run(): for a in b: runTest(a,patter) 函数2: def runTest(cas ...
随机推荐
- ATL
Normal COM.cpp #include "resource.h" // 主符号 #include "ATLCOM_i.h" #include " ...
- MySQL累加值时,考虑到值有为NULL的情况.
一个字段,表示报名人数,默认为null,经考虑,以以下sql执行加1: ) where id='xxx'
- u-boot分析(四)---设置异常向量表|设置SVC模式
u-boot分析(四) 通过前三篇的分析,我们对u-boot已经有了整体的认识和掌握,但是我们仍然对于其部分硬件是如何初始化的不太清楚,所以接下来几篇博文我将会对我们在http://www.cnblo ...
- Yii2.0 安装yii2-queue并在Linux启动守护进程监听消息
一.什么是yii2-queue? Yii2-queue是Yii2.0 PHP框架下一个消息队列拓展插件,支持基于DB, Redis, RabbitMQ, AMQP, Beanstalk 和 Gearm ...
- 只为更快、更省、更安全的 Azure CDN
来来来!小编今天要公布一件大事啦: 经过最近一次更新,Azure CDN 高级版服务 HTTPS SSL 证书的申请方式有所改进啦,除了现有的 Azure CDN 代为申请证书外,还支持用户自己申请的 ...
- CentOS7下SSH服务学习笔记
测试环境: [root@nmserver-7 ~]# uname -aLinux nmserver-7.test.com 3.10.0-514.el7.centos.plus.i686 #1 SMP ...
- 【微软大法好】VS Tools for AI全攻略(4)——选择适合自己的虚拟机
当我们选择好了自己的虚拟机后,也许效果不尽如人意.就比如我,发现代码在训练一段时间之后,CPU的使用率会下降. 这个时候我们就要开始考虑,是不是我们选择的虚拟机不是适合自己的型号. Azure的虚拟机 ...
- 详细讲解:通过composer安装TP5.1(Thinkphp5.1)
现在TP5越来越火了,TP5也更新到了5.1版本,但是5.1以上版本只能通过composer来进行安装,那么这里贴出详细的步骤 前提:PHP版本必须要5.6以上 参考网址:http://www.thi ...
- Docker build 安装报错, Could not open requirments file: [Errno 2] No such file or directory:'requirements.txt'
docker安装教程 https://docs.docker.com/get-started/part2/#build-the-app 相关帖子 https://stackoverflow.com/q ...
- 【BZOJ2127】happiness(网络流)
点此看题面 大致题意: 每个人只能在文科与理科中选择一种.选择每种科目会带来不同的喜悦值,如果相邻的两位同学选择了同一种科目则会带来额外的喜悦值.求喜悦值总和的最大值. 网络流 这道题做法显然是网络流 ...