python\从其他目录导入模块/包,中,的

发表时间:2021-05-11

通用方法

通过import sys模块,对sys.path写入新的环境变量(即要用的那个模块的所在目录),可以调用sys.path.append(方法插入环境变量(临时的))
注意,添加的路径中,原来的空格是怎么样的,就应该是怎么样的,不可以多,也不可以少,否则就算写入环境变量,肯还是找不到对应的模块或者包

for example

import the module

module_path_string="D:/OneDrive - pop.zjgsu.edu.cn/PythonPath/exp3/test_submodule_package"
sys.path.append(module_path_string)
import add
print(add.add_func(1,6))
"""inspect the sys.path:added just before:  """
# for i in sys.path: 
# for example:filter by environment variable contatins "exp"
#     if "exp" in i:
#         print(i)

import the module in a package:

""" 通过import sys模块,对sys.path写入新的环境变量(即要用的那个模块的所在目录),可以调用sys.path.append(方法插入环境变量(临时的)) """
import sys

pack_path_string="d:/OneDrive - pop.zjgsu.edu.cn/pythonPath/exp3"

sys.path.append(pack_path_string)
# for i in sys.path: 
# # for example:filter by environment variable contatins "exp"
#     if "exp" in i:
#         print(i)
""" 插入完毕,可以正常导入模块(或其中的某个函数) """
from test_submodule_package.add import add_func  
print(add_func(1,5))

the module’s path

如果是包,就要在被作为包的目录下存在(创建)一个__init__.py文件作为该目录是包的记号
在这里插入图片描述

如果是通过建立包来引用其他目录的module:

这可能发生需要引用模块的源文件和某个要被引用的模块所在目录是兄弟级别的目录的时候
尽管可以建立包来引用,但还是要注意当前的工作目录(以os.getcwd()所显示的为准,如果不是,可以用os.chdir()来更改工作目录,但如果这样,还不如直接os.chdir()到制定目录在导入module

文章来源互联网,如有侵权,请联系管理员删除。邮箱:417803890@qq.com / QQ:417803890

微配音

Python Free

邮箱:417803890@qq.com
QQ:417803890

皖ICP备19001818号
© 2019 copyright www.pythonf.cn - All rights reserved

微信扫一扫关注公众号:

联系方式

Python Free