关于python静态方法模块外访问报'module' object has no attribute

djvc djvc 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
common
| Log.py
| __init__.py
Exception
| ...
CmdOps
| SpecCmdOps.py
| __init__.py
——————————————————————————————————

Log.py 部分实现

class Log:

LOGER_NAME = "zyxd"
__instance = None

@staticmethod
def init(logconf):
logging.config.fileConfig(logconf);
Log.__instance = logging.getLogger(Log.LOGER_NAME)
Log.__instance.info(u"初始化成功")

@staticmethod
def i(msg):
if Log.__instance:
Log.__instance.info(msg)


Log.py所在__init__.py内容如下
from Log import Log

——————————————————————————————————

SpecCmdOps.py 所在目录__init__.py内容如下
from SpecCmdOps import SpecCmdOps

在SpecCmdOps.py
from ..Common import Log
class SpecCmdOps:
def somemethod(self):
Log.i(u"测试而已")


但是上面语句执行报错,'module' object has no attribute 'i'
在IDE里,是可以直接跳转到Log定义,打印Log内容如下
<module 'PyScript.Common.Log' from 'E:\my_work\PyScript\Common\Log.pyc'>

打印Log所有属性,的确没有看到相关i属性。

请大神指点迷津。。。。
...全文

相关推荐

评论 1
收藏 已收藏
分享
返回顶部
djvc
脚本语言 37,737 成员 34,208 内容