python中怎么import自己写的模块

python中怎么import自己写的模块,第1张

模块路径加入系统路径

import sys  

sys.path.append("路径名")  

import 模块名

当然了,这种方法存在一个问题,就是没有避免如果存在相同的文件名会出错的问题,于是需要改进成下面的方法(当然如果只是写些小的东西,上面的就已经足够了)

import sys   

if not "路径名" in sys.path:  

    sys.path.append("路径名")   

if not 'a' in sys.modules:  #这里a是模块名  

    a = __import__('a')  

else:  

    eval('import a')  

a = eval('reload(a)')

2、__init__.py

在目录中建一个文件名为__init__.py的文件,就可以直接按照路径名import模块了

有了这个文件,我们就可以导入这个目录下的文件了

1.如果导入的模块和主程序在同个目录下,直接import就行了

2.如果导入的模块是在主程序所在目录的子目录下,可以在子目录中增加一个空白的__init__.py文件,该文件使得python解释器将子目录整个也当成一个模块,然后直接通过“import 子目录.模块”导入即可。

3.如果导入的模块是在主程序所在目录的父目录下,则要通过修改path来解决,有两种方法:

(1)通过”import sys,sys.path.append('父目录的路径')“来改变,这种方法属于一次性的,只对当前的python解释器进程有效,关掉python重启后就失效了。

(2)直接修改环境变量:在windows中是 “ set 变量=‘路径’ ” 例如:set PYTHONPATH=‘C:\test\...’ 查看是否设置成功用echo %PYTHONPATH%,而且进到python解释器中查看sys.path,会发现已经有了新增加的路径了。这 种方式是永久的,一次设置以后一直都有效。在linux中是 "export 变量=‘路径’ “,查看是" echo $变量 "

通过修改path是通用的方法,因为python解释器就是通过sys.path去一个地方一个地方的寻找模块的。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11815248.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-18
下一篇2023-05-18

发表评论

登录后才能评论

评论列表(0条)

    保存