视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
自己写的python文件如何相互调用
2020-11-27 14:08:20 责编:小采
文档
 自己写的python文件如何相互调用?Python中的模块库十分常用,对于常用的模块可以自己动手自定义,但是如何进行调用呢?


模块相互调用

同级目录调用时的两种方法

 import module
 print(module.add(3,8))
 
 from module import add
 print(add(2,4))

同级目录的子目录调用

 from 文件相互调用 import cal
 print(cal.sub(3,8))
 from 文件相互调用.cal import sub #这种情况下加一个点(.),然后写目录
 print(sub(3,9))

同级目录的子目录的子目录的调用

 from 文件相互调用.文件2 import cal2
 print(cal2.mul(3,7))
 
 from 文件相互调用.文件2.cal2 import mul
 print(mul(3,7))

依次再深一层

from 文件相互调用.文件2.文件3 import cal3
print(cal3.divi(8,2))
from 文件相互调用.文件2.文件3.cal3 import divi
print(divi(8,2))

特殊情况

from 文件相互调用.文件2 import 文件3 #这种不推荐用这种的
print(文件3.cal3.divi(8,2))

有一种特殊的调用格式,但是有两个缺点:

一执行效率低;二不却确定文件是否重复等

from 文件相互调用 import *
print(cal.sub(3,8))
from 文件相互调用.文件2.文件3 import *
print(cal3.divi(8,2))

同时调用多个模块时,可简写如下

import xx, xx,xx, ... #即用逗号隔开

import调用模块时,做了两件事情:

1、会执行一遍被调用的模块

2、引入变量名(即模块名)

通常情况下不会把所有程序写在一个文件里面,而是依据功能写到不同的文件里面

如:

bin文件时程序的的入口
main 文件里只写逻辑程序
module 文件里面只写功能程序

包的功能:

1、用来组织模块的,可以根据模块的功能分包;

2、避免模块冲突;而同名模块放在不同包就不会发生冲突。

if __name__ == "__main__":
 print(add(3,5))
 print('ok')
print(__name__)

if __name__ == "__main__": 作用有二:

1、 放入某一个文件种,用来测试该文件的结果,但是,该文件被调用时,该语句不会被执行。

简单说就是:用于被调用文件的测试

2、调用程序里面写上这么一句,可以防止别人修改我的主程序,仅供他人调用而已。

下载本文
显示全文
专题