Python代码里引用写好模块怎样做,哪种方式好
Admin 2022-07-28 群英技术资讯 788 次浏览
本篇内容介绍了“Python代码里引用写好模块怎样做,哪种方式好”的有关知识,在实际项目的操作过程或是学习过程中,不少人都会遇到这样的问题,接下来就让小编带大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!平时写的一些 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打包exe时各种异常处理的方案总结,下文中有非常详细的介绍,对正在学习python的小伙伴们很有帮助哟,需要的朋友可以参考下
这篇文章给大家分享的是有关Python中Numpy怎么用的内容。Numpy是Python学习的基础内容,小编觉得挺实用的,因此分享给大家做个参考,接下来一起跟随小编看看吧。
python如何实现单因素分析线性拟合及地理编码?下文有实例供大家参考,对大家了解操作过程或相关知识有一定的帮助,而且实用性强,希望这篇文章能帮助大家,下面我们一起来了解看看吧。
Python具有基本的文本文件读写功能。Python的标准库提供有更丰富的读写功能。文本文件的读写主要通过open()所构建的文件对象来实现。创建文
作为 Python 初学者,在刚学习 Python 编程时,经常会看到一些报错信息,在前面我们没有提及,这章节我们会专门介绍。Python 有两种错误很容易辨认:语法错误和异常。
成为群英会员,开启智能安全云计算之旅
立即注册关注或联系群英网络
7x24小时售前:400-678-4567
7x24小时售后:0668-2555666
24小时QQ客服
群英微信公众号
CNNIC域名投诉举报处理平台
服务电话:010-58813000
服务邮箱:service@cnnic.cn
投诉与建议:0668-2555555
Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008