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

  • 7
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值