archer05 发表于 2018-8-12 09:58:25

python assert dict 断言@对比@之递归断言

#递归函数  def _assertdict(expobj=None,actobj=None,dicresult=None,key=None):
  spacestr = " "
  bresult = dicresult['result']
  if (type(actobj) != type(expobj)):
  tempstr = "actobj's type not equal expobj's type and actobj's type is %s expobj's type is %s"%(type(actobj),type(expobj))
  bresult = bresult and False
  dicresult['result'] = bresult
  dicresult['logstr'] = dicresult['logstr'] + '/n' + tempstr
  if (type(actobj) == dict) and (type(expobj) == dict):
  for e in actobj:
  a_dict = actobj
  if e in expobj:
  e_dict = expobj
  _assertdict(a_dict,e_dict,dicresult,e)
  else:
  tempstr = spacestr + "not find sub dict key is",e
  bresult = bresult and False
  dicresult['result'] = bresult
  dicresult['logstr'] = dicresult['logstr'] + '/n' + tempstr
  elif(type(actobj) == list) and (type(expobj) == list):
  if len(actobj) != len(expobj):
  tempstr = spacestr + " key%s's len is not equal"%(key)
  bresult = bresult and False
  dicresult['result'] = bresult
  dicresult['logstr'] = dicresult['logstr'] + '/n' + tempstr
  return
  for i in range(len(actobj)):
  a_list = actobj
页: [1]
查看完整版本: python assert dict 断言@对比@之递归断言