The lookup_in operation will return a LookupInResult object. Since the lookup_in operation will allow for multiple get/exist operations, the content of the LookupInResult can be retrieve via index where the index matches the order of the get/exist operations provided in the lookup_in() call. In general, the content_as property acts as a proxy to Python’s __getitem__ method, where the SDK uses the key passed in to decode the item (i.e. content_as[str] is returning str(content)). In the case of lookup_in, since the content is indexed, the content_as property is returning a lambda that takes the index, so the correct content can be returned (i.e. content_as[str](1) is returning str(content_array)).
If you are retrieving a JSON document, content_as[dict] should be a safe bet. However, with subdoc operations, content_as[str] should be safe and then your app logic can be used to convert the type if needed.
I hope this helps.