欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

python 如何引用同一个目录下的另一个py文件

程序员文章站 2024-03-25 11:37:10
...

目录

前言

在使用python进行编程的过程会遇到各种各样的问题,解决之后,最好及时做笔记,一方面帮助了后来人,一方面巩固了自己的记忆。

正文

针对这个问题,网上有很多的解决方式。其实最主要的原因是你所要引用的文件不在当前的工作目录里,同时,它也不是一个安装好的包。针对不同的环境和问题有不同的方法,大家可自行测试。

1. 方法一

首先,我先把解决我本人问题的方法记录如下。环境,Python为3.6,编辑器为sublime。
子函数(generate_gt_anchor.py)需要运用draw_image.py中的函数,这两个文件在同一个小文件夹lib文件夹下,

代码

import sys
sys.path.append('E:\CTPN\CTPN-master(1)\CTPN-master\ctpn\lib')

文件夹目录视图:
python 如何引用同一个目录下的另一个py文件

在此处有一个文件 application/app/folder/file.py
想在 application/app2/some_folder/some_file.py 中应用file.py

2.方法二

在这个路径下有一个文件 application/app2/folder/file.py
想在 application/app3/some_folder/some_file.py 中应用file.py

代码

    import sys
    sys.path.insert(0, '/path/to/application/app2/folder')
    import file

3.方法三

这个方法必须保证folder文件夹(也就是需要的文件夹下)包含__init__.py,也就是说引用的文件来自于一个完整的包package。

代码

from application.app.folder.file import func_name

4.方法四

如果是在linux系统上的python3编译器

代码

    import sys  
    sys.path.append(pathToFolderContainingScripts)  
    from scriptName import functionName #scriptName without .py extension  

5.方法五

当文件在平行路径下时,也就是我遇到的情况时,可以使用以下方法,但时灵时不灵。

代码

    application/app2/some_folder/some_file.py
    application/app2/another_folder/another_file.py

    import sys
    sys.path.append('../')

如果还有其他方法,欢迎补充,谢谢

参考:

http://*.com/questions/4383571/importing-files-from-different-folder-in-python
https://blog.csdn.net/sinat_27693393/article/details/70037718