Python代码里引用写好模块怎样做,哪种方式好
Admin 2022-07-28 群英技术资讯 531 次浏览
平时写的一些 Python
的代码,需要在其他模块里面复用。最粗狂的方法就是直接 copy
过去。
但这种方式太麻烦,copy
一堆代码,导致代码量也很多。copy
的也不爽。
下面就介绍两种方式,可以简洁明了地调用自己在其他模块写的代码。
个人推荐第二种方式。
手动使用 sys
调用自己写的 Python
模块、方法
我的代码存在 E:\\PycharmProjects\\111
目录下。需要调用的代码是 mypy
下 my007.py
里的 funA()
方法。
my007.py
里的代码如下所示:
def funA(): print("funcA in module_11") print("调用E:\\PycharmProjects\\111\\mypy\\my007.py目录下的funA()方法") return
my008.py
也是在 E:\\PycharmProjects\\111\\mypy
目录下
my008.py
代码如下:
import sys sys.path.append("../") # my008.py与my007.py同在 E:\\PycharmProjects\\111\\mypy目录下 from mypy.my007 import funA funA()
打印结果为:
funcA in module_11
调用E:\PycharmProjects\111\mypy\my007.py目录下的funA()方法
这种调用方式的弊端是,需要在每个项目的入口文件中增加两行代码,无法做到全自动。
全自动调用自己写的 Python
模块、方法
找到自己安装 Anaconda
的目录下的 site-packages
。我的目录如下所示:
D:\Anaconda3\Lib\site-packages
在该目录下创建一个文件,文件名可以随意,扩展名必须是 .pth
,我创建的是 my_code.pth
文件里面将需要引用的模块所在文件夹的绝对路径写进去,如果有多个文件夹,可以写多行,一行一个
如下图所示:
这个时候,就可以在代码中随意使用了。代码如下:
from my007 import funA funA()
打印结果为:
funcA in module_11
调用E:\PycharmProjects\111\mypy\my007.py目录下的funA()方法
如果不知道 site-packages
在哪个目录下
那么使用下面的代码即可找到:
import sysconfig print(sysconfig.get_path("purelib"))
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了在Python 3中缓存Exception对象到底会造成什么后果?下面带着这个问题一起看看文章的解析,需要的朋友可以参考一下
PIL网上有很多介绍,这里不再讲解。直接操作,读取一张图片,将其转换为灰度图像,并打印出来。
Python基础-函数(三)<1> 对返回的数据直接拆包。<2> 交换2个变量的值
POSIX规范制订了两种标准的正则表达式语法,一种是基本正则表达式,一种扩展正则表达式。这两中正则表达式的元字符组成略有不同。本节来学习基础正则表达式元字符。
这篇文章主要介绍了python 用递归实现通用爬虫解析器的方法,帮助大家更好的理解和学习使用python,感兴趣的朋友可以了解下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008