本文实例讲述了Python实现调用另一个路径下py文件中的函数方法。分享给大家供大家参考,具体如下:
针对这个问题,网上有很多的解决方式。其实最主要的原因是因为Python无法正确找到你其他文件夹下文件的路径。针对不同的环境和问题有不同的方法,大家可自行测试。
1. 方法一
首先,我先把解决我本人问题的方法记录如下。环境,Python为3.5,pycharm工作区间。主文件(main_preprocess.py)需要运用split_by_date.py中的函数,main_preprocess与split_by_date在同一个大文件夹下,其中split_by_date在preprocess文件夹下
1
2
3
4
5
|
#引入代码 import sys from sys import path path.append( 0 , sys.path[ 0 ] + '\\preprocess' ) #这里preprocess是split_by_date.py所在文件夹 from .preprocess.split_by_date import splitByDate |
文件夹目录视图:
下面的方法对我的问题都无效,可能能解决你们的问题。
以下问题针对的问题如下:
在此处有一个文件 application/app/folder/file.py
想在 application/app2/some_folder/some_file.py 中应用file.py
2.方法二
1
2
3
|
import sys sys.path.insert( 0 , '/path/to/application/app/folder' ) import file |
3.方法三
1
|
from application.app.folder. file import func_name |
但是这个方法必须保证folder文件夹(也就是需要的文件夹下)包含__init__.py,若是没有,可以新建一个
4.方法四
此法适用于 python3 on linux
1
2
3
|
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
1
2
|
import sys sys.path.append( '../' ) |
如果还有其他方法,欢迎补充
参考:
http://stackoverflow.com/questions/4383571/importing-files-from-different-folder-in-python
希望本文所述对大家Python程序设计有所帮助。
原文链接:https://blog.csdn.net/sinat_27693393/article/details/70037718