code: def set_value(self, field_name, value):
          
          if field_name in self.fields:
              if not value is None:
                  self._dict['attributes'][field_name] = _unicode_convert(value)
              else:
                  pass
          elif field_name.upper() in ['SHAPE', 'SHAPE@', "GEOMETRY"]:
              if isinstance(value, dict):
                  if 'geometry' in value:
                      self._dict['geometry'] = value['geometry']
                  elif any(k in value.keys() for k in ['x','y','points','paths','rings', 'spatialReference']):
                      self._dict['geometry'] = value
              elif isinstance(value, AbstractGeometry):
                  self._dict['geometry'] = value.asDictionary
              elif arcpyFound:
                  if isinstance(value, arcpy.Geometry) and \
                     value.type == self.geometryType:
                      self._dict['geometry']=json.loads(value.JSON)
              self._geom = None
              self._geom = self.geometry
          else:
              return False
          self._json = json.dumps(self._dict, default=_date_handler)
          return True
docs: sets an attribute value for a given field name