construction.py 文件源码

python
阅读 28 收藏 0 点赞 0 评论 0

项目:gfapy 作者: ggonnella 项目源码 文件源码
def _define_field_accessors(cls):
    if not cls.PREDEFINED_TAGS:
      cls.PREDEFINED_TAGS = list(set(cls.DATATYPE.keys()) - set(cls.POSFIELDS))
    fieldnames = cls.POSFIELDS + cls.PREDEFINED_TAGS
    if cls.NAME_FIELD and cls.NAME_FIELD not in fieldnames:
      fieldnames.append(cls.NAME_FIELD)
    for fieldname in fieldnames:
      def get_method(self, fieldname):
        return self.get(fieldname)
      def set_method(self, value, fieldname):
        return self._set_existing_field(fieldname, value)
      setattr(cls, fieldname,
          DynamicField(partial(get_method, fieldname = fieldname),
                       partial(set_method, fieldname = fieldname)))
      def try_get_method(self, fieldname):
        return self.try_get(fieldname)
      setattr(cls, "try_get_" + fieldname,
              partialmethod(try_get_method, fieldname = fieldname))
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号