(11)python 模块和包
一、导入模块和包
模块相当于一个.py文件,包相当于带有个__init__.py一个文件夹,既可按模块导入也可按包导入。
1.导入模块或包
import 包名或模块名 (as 别名),包名或模块名 (as 别名)
2.导入模块或包下的程序单元
from 包名或模块名 import 程序单元 (as 别名),程序单元 (as 别名)
如果导入的是模块,程序单元指的是py文件下的变量、方法、类
如果导入的是包,程序单元指的是包中的py文件
3.两种方式导入的区别
用import方式导入,引入的方法需要带上模块名
用from方式导入,引入的方法不需要带模块名
例如:有两个文件 a.py和b.py
b.py
def dog():
print('汪汪汪')
def cat():
print('喵喵喵')
class student:
age=18
name='tom'
def address(self):
print('湖北路')
a.py 用import方式引入
import b
b.dog()
b.student.address("")
a.py用from..import方式
from b import *
b.dog()
b.student.address("")
4.部分导入
(1)指定导入的模块或方法
对于模块 部分导入指的是导入某个变量方法或类
from b import dog,student
dog()
student.address("")
cat()#报错
(2)使用内置__all__
b.py
def dog():
print('汪汪汪')
def cat():
print('喵喵喵')
class student:
age=18
name='tom'
def address(self):
print('湖北路')
__all__=['dog','student']
a.py
from b import *
dog()
student.address("")
cat()#报错
但是可以使用局部引入
from b import dog,student,cat
dog()
student.address("")
cat()
二、定义包
创建一个 module1文件夹,里面创建两个文件
hello.py
def hello():
print('hello')
hi.py
def hi():
print('hi')
(1)用.子模块方式导入
import module1.hi
module1.hi.hi()
(2)或者创建__init__文件
__init__.py
from . import hi #从当前包中导入hi模块
(11)python 模块和包的更多相关文章
- Python/模块与包之模块
Python/模块与包之模块 1.什么是模块? 模块就是py文件 2.为什么要用模块? 如果在解释器上进行编码,把解释器关闭之前写的文件就不存在了,如果使用模块的话就能永久保存在磁盘中. 3.如何使用 ...
- Python模块、包、异常、文件(案例)
Python模块.包.异常.文件(案例) python.py #模块 # Python中的模块(Module),是一个Python文件,以.py文件结尾,包含了Python对象定义和Python语句, ...
- 【Python】解析Python模块与包
模块 模块是非常简单的Python文件,单个Python文件就是一个模块,两个文件就是两个模块. import语句是用来导入模块或者从模块里导入特定的类或者函数.如前面我们用过的math模块,从而可以 ...
- python 模块和包深度学习理解
python 模块和包 简单说相当于命名空间 1,python 模块 python模块就是一个文件,里面有函数,变量等 import 模块 模块.方法 from 模块 import fu ...
- (三)运用Python模块和包
1 引言 为了能够在Python项目中高效地运用Python模块和包,我们需要进一步地来了解它们是如何在Python项目中进行定义.使用和工作的. 2 Python模块和包 Python模块和包的基本 ...
- Python模块04/包/logging日志
Python模块04/包/logging日志 目录 Python模块04/包/logging日志 内容大纲 1.包 2.logging日志 3.今日总结 内容大纲 1.包 2.logging日志 1. ...
- 第10.11节 Python模块和包小结
Python的模块就是一个独立的Python文件,Python的包是一些功能相关的Python文件放到一个目录下进行统一管理的文件管理结构,包本质上是模块,加载包就是加载包下特定的模块文件__init ...
- python 模块和包的基础知识
1.常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀 2.为了方便管理,我们通常将程序分成一个个的文件,这样做程序的结构更清晰,方便管理.这时我们不仅 ...
- Python模块和包
模块和包是python组织代码的基本方式. 模块: python的每一个脚本文件都可称之为模块,模块的名称就是脚本的文件名.例如当我们写了一个test.py的脚本文件,则可以在同目录下的另外一个脚本m ...
随机推荐
- CF985F Isomorphic Strings
题目描述 You are given a string s s s of length n n n consisting of lowercase English letters. For two g ...
- [CF1066C]Books Queries
题目大意:维护一个数列,要求在左边插入一个数,在右边插入一个数,查询一个数的排名 题解:可以双指针,开个数组存每个数的位置 卡点:无 C++ Code: #include <cstdio> ...
- 如何用setInterval调用类的方法
setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式.setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或窗口被关闭.由 se ...
- 在xml文件中引入带有@Configuration的Java类
在xml引入带有@Configuration的Java类,就是把这个带有@Configuration的Java类,当做一个普通的的类用<bean>标签引入: 核心代码如下: @Config ...
- css sprite应用
(一)实现简单的淘宝带图标侧边栏效果 <!DOCTYPE html> <html lang="en"> <head> <meta char ...
- 【BZOJ5005】乒乓游戏 [线段树][并查集]
乒乓游戏 Time Limit: 10 Sec Memory Limit: 256 MB Description Input Output Sample Input 5 1 1 5 1 5 11 2 ...
- 阶段性总结⓵触摸事件&手势识别⓶Quartz2D绘图⓷CALayer图层⓸CAAnimation⓹UIDynamic UI动力学⓺KVC&KVO
知识点复习 1. 触摸事件&手势识别 1> 4个触摸事件,针对视图的 2> 6个手势识别(除了用代码添加,也可以用Storyboard添加) 附加在某一个特定视图上的, ...
- [bzoj3343]教主的魔法——分块
Brief description 给定一个数列,您需要支持一下两种操作: 给[l,r]同加一个数 询问[l,r]中有多少数字大于或等于v Algorithm analyse 这个题一时想不到什么有效 ...
- C++ 异常~一 转
C++ 异常机制分析 阅读目录 C++异常机制概述 throw 关键字 异常对象 catch 关键字 栈展开.RAII 异常机制与构造函数 异常机制与析构函数 noexcept修饰符与noexce ...
- HBase表操作
相对于0.9.X版本,在HBase1.X版本对内部API改动比较大,例如连接部分类库变更,如下: 连接获取:org.apache.hadoop.hbase.HBaseConfiguration.cre ...