Python эквивалентный экземпляр блока Ruby Array? - PullRequest
0 голосов
/ 09 февраля 2019

В Ruby я мог бы сказать что-то вроде:

Array.new(5) { SomeClass.new }
# => [#<SomeClass:0x00007fb9bf053ba8>, #<SomeClass:0x00007fb9bf053b80>, #<SomeClass:0x00007fb9bf053b58>, #<SomeClass:0x00007fb9bf053b30>, #<SomeClass:0x00007fb9bf053b08>]

Есть ли в python эквивалентный синтаксис?

Редактировать:

Недубликат this , потому что этот вопрос запрашивает эквивалентный синтаксис и спрашивает, как создать список с использованием анонимной функции (или аналогичной), а не как создать пустой список.

1 Ответ

0 голосов
/ 12 февраля 2019

Вы можете использовать для этого список:

[SomeClass() for _ in range(5)]

или, если ваш сценарий использования позволяет, вы можете получить итератор с:

map(lambda _: SomeClass(), range(5))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...