python中模块导入模式详解

目录
  • 模块导入
    • 1.1 import导入模块
    • 1.2 from 模块名 import 导入模板的方法
    • 1.3 as 关键字
  • OS模块操作文件
    • OS模块的作用
  • 模块的制作、发布、安装
    • 3.1 模块制作
    • 3.2 模块的分
    • 3.3 示例
    • 3.4 测试方法
    • 3.5 all魔术方法

模块导入

1.1 import导入模块

  • 所谓的模块其实就是一个外部的工具包,其中存在的其实就是Python文件,这些文件都实现了某种特定的功能,我们导入包之后直接使用即可,非常的方便。
  • 在开发中使用最多的就是使用: import 方式进行导入。导入的包一般放在文件的最前面。
  • 语法格式 : import 模块名
# 导入时间模块
import timr
# 使用时间模块中的方法
time.ctime()
  • 调用模块方法的语法格式: 模块名.函数名 ,这样调用可以防止不同模块中有同名方法导致错误。

1.2 from 模块名 import 导入模板的方法

  • 一个模块可能存在很多的函数,如果只是想导入其中的几个函数,可以使用from xxx import xxx 方式导入。
  • 使用这种方式导入之后不用在使用 模块名.函数名 的方式来调用函数,可以直接使用 函数名。但是一定要注意这种形式可能会产生覆盖的情况,当导入了两个不同包中的同名的函数的时候,第二个函数会覆盖第一个函数

举例:只想导入time模块中的ctime、time两个方法,可以按照以下的格式导入:

# 导入模块中指定的方法
from time import ctime,time
# 调用方法
ctime()
time()

注意:使用from导入,如果函数名相同,后面导入的会覆盖前面导入的函数。

  • 可以一次性的把一个模块中的全部数据进行导入。 语法格式: from xxx import *
from time import *

1.3 as 关键字

  • as关键字:给模块取别名,有时候导入的模块的名称很长,调用的时候很不方便,使用as关键字就可以给模块取一个其他的名字。
  • 当给模块起了别名之后以前模块的名字就会失效。
import time as myTime
# 使用别名调用函数,正确
myTime.ctime()
# 使用以前模块的名字调用,错误
time.ctime()

OS模块操作文件

OS模块的作用

  • 对文件进行重命名、删除等一些操作,在Python中可以利用os模块。 os模块提供了一些系统级别的操作命令

模块的制作、发布、安装

3.1 模块制作

  • Python文件都可以作为一个模块,模块的名字就是文件的名字。比如创建一个test.py文件,文件中创建一个add()函数。此时test.py文件就是一个模块,可以在其他的python文件中直接引入使用。
  • 一个模块中可以包含函数、类、变量,也能包含可执行的代码。
  • 不同的模块可以定义相同的变量名,但是每个模块中的变量名作用域只是在本模块中。

3.2 模块的分

内置:python已经存在的。

自定义:我们自己编写的功能模块。

3.3 示例

  • 定义一个相加的功能模块 (addUp.python 文件)
# 定义一个执行相加的功能模块
def add(x, y):
    return x + y
  • 在其他文件中引入并使用这个相加的功能模块
# 引入相加的功能模块(给模块起别名) 引入整个模块
import addUp as add
# 使用引入模块中的函数 (模块名.方法名)
print(add.add(1, 2))
# 3
# 直接引入模块中的指定函数
from addUp import add
# 使用引入模块中的函数 (函数名)
print(add(1, 2))
# 3
# 导入模块中的所有函数
from addUp import *
# 使用引入模块中的函数
print(add(1, 2))
# 3

3.4 测试方法

重点:在功能模块中对模块进行测试的时候,需要使用如下的格式

# 定义一个执行相加的功能模块
def add(x, y):
    return x + y
# 测试该模块中的功能。使用这种形式测试就不会发生其他文件在使用这个功能模块的时候输出这个测试结果
# 是因为此时被这个 if 条件进行了控制
if __name__ == '__main__':
    # 测试功能模块中的函数
    res = add(1, 3)
    print('测试模块中的add函数的结果:%s' % res)
    # 测试模块中的add函数的结果:4
    pass

3.5 all魔术方法

  • 指定对外暴露的功能函数。
# all 魔术方法可以存储让其暴露在外的函数们,将一些函数不对外暴露
# 注意:只有当调用者使用的是 from addUp import * 这种形式的时候all魔术方法才会生效
#      如果使用 from addUp import multiply ,add ,subtract 方式,all也不会生效
#      如果是使用 import 模块名 的形式这个 all 不会生效,这个模块中的所有方法还是全部可以暴露的。
# 总结:all魔术方法只会对 from addUp import * 这种格式的导入生效
__all__ = ['add', 'subtract']
def add(x, y):
    return x + y
def subtract(x, y):
    return x - y
def multiply(x, y):
    return x * y
# 测试该模块中的功能
if __name__ == '__main__':
    # 测试功能模块中的函数
    res = add(1, 3)
    print('测试模块中的add函数的结果:%s' % res)
    # 测试模块中的add函数的结果:4
    pass

以上就是python中模块导入模式详解的详细内容,更多关于python模块导入模式的资料请关注我们其它相关文章!

(0)

相关推荐

  • Python xlrd模块导入过程及常用操作

    简介 读取Excle文档,支持xls,xlsx格式 安装:pip3 install xlrd 导入:import xlrd xlrd 模块方法 读取Excel file = 'route_info.xls' # 读取Excel信息,生成对象 read_book = xlrd.open_workbook(file) 获取sheet[表]相关方法,返回xlrd.sheet.Sheet()对象 sheet = read_book.sheets() # 获取全部sheet列表 print(sheet)

  • python 中的列表生成式、生成器表达式、模块导入

    5.16 列表生成式 l=[] for i in range(100): l.append('egg%s' %i) print(l) ​ l=['egg%s' %i for i in range(100)] l=['egg%s' %i for i in range(1000) if i > 10] print(l) 5.17 列表生成式与生成器表达式的应用 names=['egon','alex_sb','wupeiqi','yuanhao','lxx'] res=map(lambda x:x.

  • python3 动态模块导入与全局变量使用实例

    动态导入有两种: 1 __main__(): f="demo.A" aa=__main__(f) aa.A.t() 2 import importlib: import importlib f="demo.A" aa=importlib.import_module(f) aa.t() 全局变量使用: global_list.py: size=None A.py: from demo import global_list global_list.size=101 fr

  • python中添加模块导入路径的方法

    python中自定义模块导入路径的方式主要有以下3种: (1)使用sys.path.append()随着程序执行,会动态地添加模块导入的路径,但是程序执行结束后就会立即失效(临时性的) import sys sys.path.append('自定义路径') (2)加入到环境变量PYTHONPATH用于当前用户 在用户主目录下有一个 .bashrc 隐藏文件,打开文件 sudo vim ~/.bashrc 添加单个路径的方法 export PYTHONPATH=<自定义路径>:$PYTHONPA

  • python模块导入的方法

    模块在python编程中的地位举足轻重,熟练运用模块可以大大减少代码量,以最少的代码实现复杂的功能. 下面介绍一下在python编程中如何导入模块: (1)import 模块名:直接导入,这里导入模块中的所有与函数: import configparser import time import sys 这里的模块也可以是自己编写的脚本名称,如: #hello.py def hello1(): print("hello world!") import hello (2) from 模块名

  • python中模块导入模式详解

    目录 模块导入 1.1 import导入模块 1.2 from 模块名 import 导入模板的方法 1.3 as 关键字 OS模块操作文件 OS模块的作用 模块的制作.发布.安装 3.1 模块制作 3.2 模块的分 3.3 示例 3.4 测试方法 3.5 all魔术方法 模块导入 1.1 import导入模块 所谓的模块其实就是一个外部的工具包,其中存在的其实就是Python文件,这些文件都实现了某种特定的功能,我们导入包之后直接使用即可,非常的方便. 在开发中使用最多的就是使用: impor

  • Python中模块string.py详解

    一.用法 字符串常量: import string print(string.ascii_lowercase) print(string.ascii_uppercase) print(string.ascii_letters) print(string.digits) print(string.hexdigits) print(string.octdigits) print(string.punctuation) print(string.printable) 结果 abcdefghijklmn

  • python 环境变量和import模块导入方法(详解)

    1.定义 模块:本质就是.py结尾的文件(逻辑上组织python代码)模块的本质就是实现一个功能 文件名就是模块名称 包: 一个有__init__.py的文件夹:用来存放模块文件 2.导入模块 import 模块名 form 模块名 import * from 模块名 import 模块名 as 新名称 3. 导入模块本质 import 模块名 ===> 将模块中所有的数据赋值给模块名,调用时需要模块名.方法名() from 模块名 import 方法名 ==>将该方法单独放到当前文件运行一遍

  • Python中unittest的数据驱动详解

    目录 前言 一.ddt简单介绍 二.ddt处理各种类型数据 1.分析ddt工作原理 2.ddt测试元祖数据 2.1测试单组元素 2.2测试多组未分解元素 2.3测试多组分解元素 3.ddt测试列表数据 3.1多组列表拆分数据 3.2复杂列表(含字典)拆分数据 4.ddt测试字典数据 4.1多组字典数据拆分 5.ddt测试字典列表数据结合 6.ddt测试读取文件数据 前言 在设计用例的时候,有些用例只是参数数据的输入不一样,比如登录这个功能,操作过程是一样的.如果重复去写操作过程会增加代码量,对应

  • 对Python Pexpect 模块的使用说明详解

    背景介绍 Expect 程序主要用于人机对话的模拟,就是那种系统提问,人来回答 yes/no ,或者账号登录输入用户名和密码等等的情况.因为这种情况特别多而且繁琐,所以很多语言都有各种自己的实现.最初的第一个 Expect 是由 TCL 语言实现的,所以后来的 Expect 都大致参考了最初的用法和流程,整体来说大致的流程包括: 运行程序 程序要求人的判断和输入 Expect 通过关键字匹配 根据关键字向程序发送符合的字符串 TCL 语言实现的 Expect 功能非常强大,我曾经用它实现了防火墙

  • python openpyxl模块的使用详解

    Python_Openpyxl 1. 安装 pip install openpyxl 2. 打开文件 ① 创建 from openpyxl import Workbook # 实例化 wb = Workbook() # 激活 worksheet ws = wb.active ② 打开已有 >>> from openpyxl import load_workbook >>> wb2 = load_workbook('文件名称.xlsx') 3. 储存数据 # 方式一:数据

  • python中 logging的使用详解

    日志是用来记录程序在运行过程中发生的状况,在程序开发过程中添加日志模块能够帮助我们了解程序运行过程中发生了哪些事件,这些事件也有轻重之分. 根据事件的轻重可分为以下几个级别: DEBUG: 详细信息,通常仅在诊断问题时才受到关注.整数level=10 INFO: 确认程序按预期工作.整数level=20 WARNING:出现了异常,但是不影响正常工作.整数level=30 ERROR:由于某些原因,程序 不能执行某些功能.整数level=40 CRITICAL:严重的错误,导致程序不能运行.整数

  • python logging模块的使用详解

    logging日志模块:是用来记录日志的模块,一般记录用户在软件中的操作 使用方法:模板直接拿来用,手动修改 # logging的配置信息(模板) import os import logging.config # 定义三种日志输出格式 开始(模板,不用配置,直接拿来用) standard_format = '[%(asctime)s][%(threadName)s:%(thread)d][task_id:%(name)s][%(filename)s:%(lineno)d]' \ '[%(lev

  • python中time包实例详解

    在python中基础的时间运用,离不开time函数的支持.这些函数为了方便调用集中放在一个地方,叫做time包.有的人会仔细追寻time包的来源,会发现它和C语言有密不可分的关系.下面我们简单介绍time包的概念,然后就包中的一些函数进行列举,并附上对应的使用方法. 1.概念 time包基于C语言的库函数(library functions).Python的解释器通常是用C编写的,Python的一些函数也会直接调用C语言的库函数. 2.time包中的函数 time.clock()返回程序运行的整

  • Python中return用法案例详解

    python中return的用法 1.return语句就是把执行结果返回到调用的地方,并把程序的控制权一起返回 程序运行到所遇到的第一个return即返回(退出def块),不会再运行第二个return. 例如: def haha(x,y): if x==y: return x,y print(haha(1,1)) 已改正: 结果:这种return传参会返回元组(1, 1) 2.但是也并不意味着一个函数体中只能有一个return 语句,例如: def test_return(x): if x >

随机推荐