(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 ...
随机推荐
- Mapreduce简要原理与实践
探索Mapreduce简要原理与实践 目录-探索mapreduce 1.Mapreduce的模型简介与特性?Yarn的作用? 2.mapreduce的工作原理是怎样的? 3.配置Yarn与Mapred ...
- 【bzoj1180】[CROATIAN2009]OTOCI LCT
题目描述 给出n个结点以及每个点初始时对应的权值wi.起始时点与点之间没有连边.有3类操作: 1.bridge A B:询问结点A与结点B是否连通.如果是则输出“no”.否则输出“yes”,并且在结点 ...
- DataBase -- Second Highest Salary
Question: Write a SQL query to get the second highest salary from the Employee table. +----+-------- ...
- AGC017C Snuke and Spells(巧妙的线段覆盖模型)
题目大意: 给出n个球,每个球上都有数字,然后每次都进行如下操作 如果当前的球总共有k个,那么就把球上数字为k的所有球都消除掉 注意到,并不是每种情况都可以全部消光,所以你可以选择若干球,把它们标号改 ...
- Divljak
Divljak Alice 有 $n$ 个字符串 $ S_1,S_2,\cdots,S_n $ ,Bob有一个字符串集合 $T$ ,一开始集合是空的. 接下来会发生 $q$ 个操作,操作有两种形式: ...
- readelf用法小记
By francis_hao Feb 14,2017 显示ELF文件的信息 用法概述 readelf和objdump类似,不过,readelf会显示更详细的信息,而且独立于BFD库,因此当BFD ...
- Codeforces Round #521 (Div. 3) F1. Pictures with Kittens (easy version)
F1. Pictures with Kittens (easy version) 题目链接:https://codeforces.com/contest/1077/problem/F1 题意: 给出n ...
- Codeforces Round #524 (Div. 2) A. Petya and Origami
A. Petya and Origami 题目链接:https://codeforc.es/contest/1080/problem/A 题意: 给出n,k,k表示每个礼品里面sheet的数量(礼品种 ...
- hbase监控实现
目前实现的监控概览
- 在Global.asax中过滤POST请求的非法参数。
using System;using System.Collections.Generic;using System.Collections.Specialized;using System.Linq ...