original_docstring: Get the attr value of an object.
  
  		:param attrs: Sequence of items to access recursively
  		:param obj: The Mapping object from where to access the attr values
  		:return: obj[attrs[0]][attrs[1]]...[attrs[len(attrs)-1]]
  		:raises: KeyError if further mapping access was not possible.
  		
docstring: Get the attr value of an object.
docstring_tokens: Get the attr value of an object .
code: def attr_value(attrs, obj):
  		"""Get the attr value of an object.
  
  		:param attrs: Sequence of items to access recursively
  		:param obj: The Mapping object from where to access the attr values
  		:return: obj[attrs[0]][attrs[1]]...[attrs[len(attrs)-1]]
  		:raises: KeyError if further mapping access was not possible.
  		"""
  		item = attrs
  		try:
  			for item in attrs:
  				obj = obj[item]
  			return obj
  		except (KeyError, ValueError):
  			raise KeyError(f"No such key: {item}")
code_tokens: def attr_value ( attrs , obj ) : item = attrs try : for item in attrs : obj = obj [ item ] return obj except ( KeyError , ValueError ) : raise KeyError ( f"No such key: {item}" )
short_docstring: Get the attr value of an object.
short_docstring_tokens: Get the attr value of an object .
comment: """Get the attr value of an object.
  
  		:param attrs: Sequence of items to access recursively
  		:param obj: The Mapping object from where to access the attr values
  		:return: obj[attrs[0]][attrs[1]]...[attrs[len(attrs)-1]]
  		:raises: KeyError if further mapping access was not possible.
  		"""