mirror of
https://github.com/aiogram/aiogram.git
synced 2026-04-08 16:37:47 +00:00
Replace for loops with comprehensions (#629)
This commit is contained in:
parent
ebd7f79326
commit
82d10844d7
8 changed files with 25 additions and 42 deletions
|
|
@ -213,12 +213,5 @@ class MongoStorage(BaseStorage):
|
|||
:return: list of tuples where first element is chat id and second is user id
|
||||
"""
|
||||
db = await self.get_db()
|
||||
result = []
|
||||
|
||||
items = await db[STATE].find().to_list()
|
||||
for item in items:
|
||||
result.append(
|
||||
(int(item['chat']), int(item['user']))
|
||||
)
|
||||
|
||||
return result
|
||||
return [(int(item['chat']), int(item['user'])) for item in items]
|
||||
|
|
|
|||
|
|
@ -232,9 +232,7 @@ class Dispatcher(DataMixin, ContextInstanceMixin):
|
|||
:return:
|
||||
"""
|
||||
if fast:
|
||||
tasks = []
|
||||
for update in updates:
|
||||
tasks.append(self.updates_handler.notify(update))
|
||||
tasks = [self.updates_handler.notify(update) for update in updates]
|
||||
return await asyncio.gather(*tasks)
|
||||
|
||||
results = []
|
||||
|
|
|
|||
|
|
@ -48,9 +48,13 @@ class FiltersFactory:
|
|||
:param full_config:
|
||||
:return:
|
||||
"""
|
||||
filters_set = []
|
||||
filters_set.extend(self._resolve_registered(event_handler,
|
||||
{k: v for k, v in full_config.items() if v is not None}))
|
||||
filters_set = list(
|
||||
self._resolve_registered(
|
||||
event_handler,
|
||||
{k: v for k, v in full_config.items() if v is not None},
|
||||
)
|
||||
)
|
||||
|
||||
if custom_filters:
|
||||
filters_set.extend(custom_filters)
|
||||
|
||||
|
|
|
|||
|
|
@ -242,7 +242,7 @@ class NotFilter(_LogicFilter):
|
|||
class AndFilter(_LogicFilter):
|
||||
|
||||
def __init__(self, *targets):
|
||||
self.targets = list(wrap_async(target) for target in targets)
|
||||
self.targets = [wrap_async(target) for target in targets]
|
||||
|
||||
async def check(self, *args):
|
||||
"""
|
||||
|
|
@ -268,7 +268,7 @@ class AndFilter(_LogicFilter):
|
|||
|
||||
class OrFilter(_LogicFilter):
|
||||
def __init__(self, *targets):
|
||||
self.targets = list(wrap_async(target) for target in targets)
|
||||
self.targets = [wrap_async(target) for target in targets]
|
||||
|
||||
async def check(self, *args):
|
||||
"""
|
||||
|
|
|
|||
|
|
@ -131,22 +131,14 @@ class ListField(Field):
|
|||
def serialize(self, value):
|
||||
if value is None:
|
||||
return None
|
||||
|
||||
result = []
|
||||
serialize = super(ListField, self).serialize
|
||||
for item in value:
|
||||
result.append(serialize(item))
|
||||
return result
|
||||
return [serialize(item) for item in value]
|
||||
|
||||
def deserialize(self, value, parent=None):
|
||||
if value is None:
|
||||
return None
|
||||
|
||||
result = []
|
||||
deserialize = super(ListField, self).deserialize
|
||||
for item in value:
|
||||
result.append(deserialize(item, parent=parent))
|
||||
return result
|
||||
return [deserialize(item, parent=parent) for item in value]
|
||||
|
||||
|
||||
class ListOfLists(Field):
|
||||
|
|
@ -154,9 +146,7 @@ class ListOfLists(Field):
|
|||
result = []
|
||||
serialize = super(ListOfLists, self).serialize
|
||||
for row in value:
|
||||
row_result = []
|
||||
for item in row:
|
||||
row_result.append(serialize(item))
|
||||
row_result = [serialize(item) for item in row]
|
||||
result.append(row_result)
|
||||
return result
|
||||
|
||||
|
|
@ -165,9 +155,7 @@ class ListOfLists(Field):
|
|||
deserialize = super(ListOfLists, self).deserialize
|
||||
if hasattr(value, '__iter__'):
|
||||
for row in value:
|
||||
row_result = []
|
||||
for item in row:
|
||||
row_result.append(deserialize(item, parent=parent))
|
||||
row_result = [deserialize(item, parent=parent) for item in row]
|
||||
result.append(row_result)
|
||||
return result
|
||||
|
||||
|
|
|
|||
|
|
@ -62,9 +62,7 @@ class InlineKeyboardMarkup(base.TelegramObject):
|
|||
:return: self
|
||||
:rtype: :obj:`types.InlineKeyboardMarkup`
|
||||
"""
|
||||
btn_array = []
|
||||
for button in args:
|
||||
btn_array.append(button)
|
||||
btn_array = [button for button in args]
|
||||
self.inline_keyboard.append(btn_array)
|
||||
return self
|
||||
|
||||
|
|
|
|||
|
|
@ -79,9 +79,7 @@ class ReplyKeyboardMarkup(base.TelegramObject):
|
|||
:return: self
|
||||
:rtype: :obj:`types.ReplyKeyboardMarkup`
|
||||
"""
|
||||
btn_array = []
|
||||
for button in args:
|
||||
btn_array.append(button)
|
||||
btn_array = [button for button in args]
|
||||
self.keyboard.append(btn_array)
|
||||
return self
|
||||
|
||||
|
|
|
|||
|
|
@ -198,10 +198,14 @@ class OrderedHelperMeta(type):
|
|||
def __new__(mcs, name, bases, namespace, **kwargs):
|
||||
cls = super().__new__(mcs, name, bases, namespace)
|
||||
|
||||
props_keys = []
|
||||
|
||||
for prop_name in (name for name, prop in namespace.items() if isinstance(prop, (Item, ListItem))):
|
||||
props_keys.append(prop_name)
|
||||
props_keys = [
|
||||
prop_name
|
||||
for prop_name in (
|
||||
name
|
||||
for name, prop in namespace.items()
|
||||
if isinstance(prop, (Item, ListItem))
|
||||
)
|
||||
]
|
||||
|
||||
setattr(cls, PROPS_KEYS_ATTR_NAME, props_keys)
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue