我有一个python脚本,它在apachepig下的jython中执行。它用 @schemaFunction
负责。这个 @outputSchemaFunction
装饰工。
我想用一个独立的python主脚本在pig之外的“普通的本地python解释器”下测试这些函数。但是,当我在本地python系统下运行脚本时,解释器会抱怨: "NameError: name 'outputSchema' is not defined"
我知道独立的python显然不支持这些decorator。
如何在本地python解释器中测试脚本?我可以在调用脚本中将装饰器定义为“空”吗?或者是否有类似于忽略装饰器的命令行选项?
1条答案
按热度按时间qc6wkl3g1#
我用的是Pig0.10.0。
当pig将该模块用作自定义项时,它会设置
__name__
至__lib__
. 正常情况下,__name__
设置为模块的实际名称(减去.py)。因此,可以为定义一些空的装饰器outputSchema
以及outputSchemaFunction
在if块的内部。比如:我的自定义项.py
你可以自己验证
print __name__
在山顶myudfs.py
.