Вы можете сделать это с небольшим пониманием списка:
country = 'sg'
users = 2
print(['{}{}@example.com'.format(country,i+1) for i in range(users)])
edit: перечитывая ваш вопрос, кажется, что вам также нужно «базовое» электронное письмо без номера, поэтому понимание будет выглядеть примерно так :
['{}@example.com'.format(country)] + ['{}{}@example.com'.format(country,i+1) for i in range(users)]
Проверьте это сообщение в блоге:
Для записи универсального типа используйте
`
знак, сопровождаемый количеством универсальных типов, которые получает интерфейс/класс.
И комментарий на той же сказанной странице:
Для использования постоянного типа в дженерике, необходимо использовать скобки (
[[ ]]
).
Таким образом, я предполагаю, что Ваш конфигурационный файл должен содержать что-то вроде этого:
<typeAlias alias="ISimpleCacheOfIBrokeredDataObject"
type="MyApplication.ISimpleCache`1[[MyApplication.IBrokeredDataObject, MyApplication]], MyApplication" />
Отметьте использование "серьезного диакритического знака" или символа "одинарной левой кавычки" (`
), не нормальная одинарная кавычка ('
).
И это тип со строгим знаком в качестве универсального параметра.
<typeAlias alias="IPublisherOfXElement" type="MyLib.IX.IPublisher`1[[System.Xml.Linq.XElement, System.Xml.Linq, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]], MyLib.IX" />
Вот как вы используете тип, который принимает два общих типа:
<section name="doubleFamilyConfig"
type="ConfigTest.Configuration.FamilySection`2[
[ConfigTest.Types.Child, ConfigTest],
[ConfigTest.Types.Parent, ConfigTest]
],
ConfigTest" />
Вы можете использовать каждый тип в отдельной строке, если хотите, чтобы его было легче понять . Обратите внимание, что первая скобка должна стоять сразу после типа (FamilySection`2 ** [**).