@@ -140,7 +140,7 @@ def deserialise_value(cls, value_type: type, value: Any, **kwargs) -> Any: # no
140140
141141 if value and value_type in (bytes , bytearray ) and hasattr (value , "value" ):
142142 value = value .value
143- if value_type == bytearray :
143+ if value_type is bytearray :
144144 value = bytearray (value )
145145
146146 if value_type in (str , bool , bytes , bytearray ):
@@ -160,18 +160,18 @@ def deserialise_value(cls, value_type: type, value: Any, **kwargs) -> Any: # no
160160
161161 origin_type = get_origin (value_type )
162162
163- if origin_type == list :
163+ if origin_type is list :
164164 item_type = get_args (value_type )[0 ]
165165 return [cls .deserialise_value (item_type , val , ** kwargs ) for val in value ]
166166
167- if origin_type == dict :
167+ if origin_type is dict :
168168 val_type = get_args (value_type )[1 ]
169169 return {key : cls .deserialise_value (val_type , val , ** kwargs ) for key , val in value .items ()}
170170
171- if origin_type == frozenset :
171+ if origin_type is frozenset :
172172 return frozenset (val for val in value )
173173
174- if origin_type == set :
174+ if origin_type is set :
175175 return set (value )
176176
177177 return value
@@ -413,10 +413,7 @@ async def item_exists(self, key: TModelKey, consistent_read: bool = False, **kwa
413413 item = await self .get_item (
414414 key , ConsistentRead = consistent_read , ProjectionExpression = self ._partition_key , ** kwargs
415415 )
416- if not item or self ._partition_key not in item :
417- return False
418-
419- return True
416+ return not (not item or self ._partition_key not in item )
420417
421418 @dynamodb_retry_backoff ()
422419 async def delete_item (self , key : TModelKey , ** kwargs ):
0 commit comments