python导入自定义py文件
目录
1.导入当前目录下的py文件
2.导入当前目录下某个文件夹里的py文件
3.导入上级目录下某个文件夹里的py文件
1.导入当前目录下的py文件
比如写了一个tool_func.py,里面放了一些工具函数,将其放在主函数代码main.py的同级目录下
# file: tool_func.py
def get_second_max_value(data: list):
if len(data) == 0:
return None
elif len(data) == 1:
return data[0]
data_copy = data.copy()
data_copy.sort()
return data_copy[-2]
主函数代码main.py
# file: main.py
import tool_func
if __name__ == "__main__":
result = tool_func.get_second_max_value([1, 3, 8, 4])
print(result)
main.py也可以这样调用自定义库的函数
# file: main.py
from tool_func import *
if __name__ == "__main__":
result = get_second_max_value([1, 3, 8, 4])
print(result)
运行结果
D:\Python3.6.6\python.exe D:\projects\pytest\main.py
3
Process finished with exit code 0
2.导入当前目录下某个文件夹里的py文件
像这样,main.py的同级目录下有个文件夹lib,lib下有两个py文件
tool_func.py内容如下
# file: tool_func.py
def get_second_max_value(data: list):
if len(data) == 0:
return None
elif len(data) == 1:
return data[0]
data_copy = data.copy()
data_copy.sort()
return data_copy[-2]
tool_math.py如下
# file: tool_math.py
def my_add(x, y):
z = x + y + 100
return z
main.py如下
# file: main.py
from lib import tool_func
from lib import tool_math
if __name__ == "__main__":
result = tool_func.get_second_max_value([1, 3, 8, 4])
print(result)
c = tool_math.my_add(1, 2)
print(c)
main.py也可以像下面这样调用自定义库的函数
# file: main.py
from lib.tool_func import *
from lib.tool_math import *
if __name__ == "__main__":
result = get_second_max_value([1, 3, 8, 4])
print(result)
c = my_add(1, 2)
print(c)
运行结果
D:\Python3.6.6\python.exe D:\projects\pytest\main.py
4
103
Process finished with exit code 0
3.导入上级目录下某个文件夹里的py文件
比如像下面这样,main.py在demo文件夹下,tool.py在lib文件夹下的TEST文件夹下
├── demo 项目目录
│ ├── main.py 代码文件
└── lib
└── TEST
└── tool.py 库py文件
tool.py内容
def myprint():
print("xxxxxxx")
则main.py可以这样调用tool.py中的函数,其中用sys.path.append("../")设置了可以从哪些目录导入,默认有当前目录
import sys
import os
sys.path.append("../")
from lib.TEST.tool import *
myprint()
运行结果
xxxxxxx
end
作者:hutaotaotao