def _structure(msg, fp=None, level=0, include_default=False):
 if (fp is None):
  fp = sys.stdout
 tab = (' ' * (level * 4))
 print >>fp, (tab + msg.get_content_type()),
 if include_default:
  print >>fp, ('[%s]' % msg.get_default_type())
 else:
  print >>fp
 if msg.is_multipart():
  for subpart in msg.get_payload():
   _structure(subpart, fp, (level + 1), include_default)

def _structure ( msg , fp = None , level = 0 , include_default = False ) : if ( fp is None ) : fp = sys . stdout tab = ( ' ' * ( level * 4 ) ) print >> fp , ( tab + msg . get_content_type ( ) ) , if include_default : print >> fp , ( '[%s]' % msg . get_default_type ( ) ) else : print >> fp if msg . is_multipart ( ) : for subpart in msg . get_payload ( ) : _structure ( subpart , fp , ( level + 1 ) , include_default )
a handy debugging aid .