关于python中自己写的模块之前相互调用函数

PS:之前偷懒直接用了添加系统路径的方法,现在代码越改越多也越杂,而且最近要添加多个配置参数,当我添加完参数发现崩了,服务计算一直失败,还是得用导包的形式,之前稍微用过但是一直模棱两可一知半解,现在知道一旦代码函数多了之后就得用它,希望能比较直观的理解

 

1.先说下偷懒的方式也就是如下代码:

import sys, os
sys.path.append(os.path.dirname(__file__) + os.sep + 'database/')

如果当前py文件的运行目录是/home/pacs/PycharmProjects/tf,那在当前这个py文件里可以添加过上面代码,就可以在下面代码中直接导入/home/pacs/PycharmProjects/tf/database/下面的文件.这个适合文件比较少的时候临时用用的.

 

2.导包的形式:

下面是在包在pycharm上打开的格式

LungDetectorClassier是包的顶层,而后每个文件夹下都要放一个__init__.py才能知道这是一个包才能调用文件夹下的文件(LungDetectorClassier文件夹下也要加,就是最后一个__init__.py).

如果我要在db_sqlite3.py文件里调用configg.py(跨文件夹),那么要这么写

from LungDetectorClassier.config import configg

而我要在execute_status_result.py调用db_sqlite3.py(同文件夹下),那么要这么写

from . import db_sqlite3

 

注意点

如果我们要开启服务的话,不能将调用服务的运行文件放在包里面的文件夹,必须放在包外面如下:

我就是用test_ai.py和test_predict.py来开启服务的.

其中test_ai.py代码如下:

# -*- coding: utf-8 -*-
from LungDetectorClassier.service.ai import AI_algorithm

if __name__ == '__main__':
    AI_algorithm()

而test_predict.py类似.

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值