下面是我的asn1语法表示:
MiepPullWtdr ::= [0] SEQUENCE
{
timeStamp [8] GeneralizedTime
}我需要帮助来实现同样的使用pyasn1。
下面是我的代码片段:
from pyasn1.type import univ, namedtype, tag, char, namedval, useful
class MiepPullWtdr(univ.Sequence):
componentType = namedtype.NamedTypes(namedtype.NamedType('timeStamp', useful.GeneralizedTime().subtype(implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 8)))
)
miepPullWtdr = MiepPullWtdr()
miepPullWtdr.setComponentByName('timeStamp', '201103081200Z')
print(miepPullWtdr.prettyPrint())我也试过了
componentType = namedtype.NamedTypes(namedtype.NamedType('timeStamp',useful.GeneralizedTime().tagSet(tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 8)))两者都不起作用,并给出一个奇怪的错误重新评分语法错误:-
miepPullWtdr = MiepPullWtdr()
^
SyntaxError: invalid syntax我已经检查了逗号和括号。看起来都是对的。
有什么帮助吗?谢谢
发布于 2016-09-09 07:41:26
这是您的代码,除了固定的componentType的悬空括号。适用于我:
from pyasn1.type import univ, namedtype, tag, namedval, useful
class MiepPullWtdr(univ.Sequence):
componentType = namedtype.NamedTypes(
namedtype.NamedType('timeStamp', useful.GeneralizedTime().subtype(implicitTag=tag.Tag(tag.tagClassContext, tag.tagFormatSimple, 8)))
)
miepPullWtdr = MiepPullWtdr()
miepPullWtdr.setComponentByName('timeStamp', '201103081200Z')
print(miepPullWtdr.prettyPrint())https://stackoverflow.com/questions/39336233
复制相似问题