摘要:什么是包为了组织好模块,会将多个模块分为包。处理包也是相当方便的。简单来说,包就是文件夹,但该文件夹下必须存在文件。最简单的情况下,只需要一个空的文件即可。当然它也可以执行包的初始化代码包底下也能包含包,这和文件夹一样,还是比较好理解的。
什么是包?
为了组织好模块,会将多个模块分为包。Python 处理包也是相当方便的。简单来说,包就是文件夹,但该文件夹下必须存在 __init__.py 文件。
最简单的情况下,只需要一个空的 __init__.py 文件即可。当然它也可以执行包的初始化代码,包底下也能包含包,这和文件夹一样,还是比较好理解的。
新建pack01和pack02包
在pack01的__init__.py中写入
print("1号先生") from pack01.MyTime import timeit
新建MyTime.py文件,写入
import functools import time import random import string money=1000 def timeit(fun): @functools.wraps(fun) #可以保留被装饰函数的函数名和帮助文档信息 def wrapper(*args,**wargs): #*args,**wargs接收可变参数和关键字参数 #函数执行前后记时 """ 这是wrapper函数内容 """ start_time = time.time() res = fun(*args,**wargs) #对元组和字典进行解包 end_time = time.time() print("运行时间是%.6f" %(end_time-start_time)) return res return wrapper @timeit def hello(): return "hello" #判断模块是否被导入,如果没有被导入,则执行以下代码 if __name__ == "__main__": print(hello()) print(__name__) #__all__用来控制from xxx import *的导入内容 __all__=["hello","timeit","money"] #定义 __all__ 变量,该变量为一列表
在pack02的__init__.py中写入
print("2号先生") from pack02 import login_logout
新建 login_logout.py文件,写入
导入包当import导入包时,实质是执行包里面的__init__.py文件
#第一种from pack01.MyTime import timeit #调用命令:@pack01.MyTime.timeit #第二种 在__init__.py文件写入:from pack01.MyTime import timeit #from pack01.MyTime import timeit #调用命令@timeit from pack01.MyTime import timeit @timeit def fun(x,y): return x+y print(fun(1,2)) from pack02.login_logout import login print(login())
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/42302.html
摘要:下安装去官网下载源码安装包或者解压安装包到目录安装编译过程中需要的依赖包进入解压的安装包进行编译安装添加的命令到环境变量里临时添加所在的路径永久添加添加或者测试另开一个输入表示当前用户家目录代码编写打印中的 linux下安装python -去官网下载源码安装包 或者lftp 172.25.254.250 cd pub/software/python get Python-3.6.4.t...
摘要:列表打了激素的数组可以存储任意数据类型的集和,列表里面也是可以嵌套列表的。 python工具--pycharm 安装pycharm 官网下载pycharm源码包 解压源码包到指定位置, 超级用户建议解压到/opt目录, 普通用户建议解压到当前用户家目录 进入解压目录/opt/pycharm-community-2017.1.4/, Install-Linux-tar.txt详细介绍...
阅读 2649·2021-11-25 09:43
阅读 2557·2021-11-22 09:34
阅读 2788·2021-11-12 10:34
阅读 1411·2021-10-20 13:46
阅读 2274·2019-08-30 13:21
阅读 868·2019-08-30 11:21
阅读 457·2019-08-30 11:20
阅读 2164·2019-08-29 17:20