Python python 诡异问题求助各位大哥

Neilguo111 · 2020年08月11日 · 最后由 t-bug 回复于 2020年08月12日 · 225 次阅读

今天调试的过程中遇到一个问题,描述如下:
common 中的一个文件调用 FunctionUtils 包下的 process_function() 方法
执行到 process_function() 方法内部调用另一个方法时报错

我单独执行这个文件的方法时又没有问题!!新手常年潜水,第一次发帖,诚心请教各位

共收到 9 条回复 时间 点赞

建议你断点跑一下,怀疑 get_function_dict() 方法定义有问题,或者调用时没初始化这个方法

pangxie 回复

打断点跑过了,每次执行到这安就断了,抛出的错误是这个名字没有定义,但是我引入的时候是直接引入全部的,也就是 from ** import *,不应该抛这个错误的;另外我尝试了再别的文件里面直接调用这个方法也是靠谱的😢

你这截图别人也无法回答你的问题

blues_mli 回复

那我再描述一下我遇到的问题哈,截图中描述的就是一个问题,我明显已经把那个文件下的方法导入了,但是到真正执行的时候又报错,那个方法未定义😂

导入包的时候不使用 import * 号,直接导入方法 import get_function_dict() 试试

是的,直接指定导入方法就行了,但是还是不明白 import * 怎么不行

Neilguo111 回复

我记得 python 编程规范提到不要这样去引入模块,还有就是就算你这样做法没问题,那你的 get_function_dict() 没有显示的指出是那个模块中的,肯定不能用的啊。应该 DataRandomUnits.get_function_dict(),不保证对

在包里 加个init.py

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册