Сочетание zip
(для создания возможностей для каждой позиции) и itertools.product
(для циклического изменения возможностей в каждой позиции) делает это довольно легко: [1113 ]
from itertools import product
a = [1, 2, 3]
b = [4, 5, 6]
for result in product(*zip(a, b)):
print(*result, sep='')
zip
просто составляют пары из (1, 4)
, (2, 5)
и (3, 6)
; распаковка этих трех аргументов в product
заставляет product
циклически проходить каждый возможный выбор одного значения из каждой пары, создавая:
123
126
153
156
423
426
453
456
Спасибо @ima, Ваш ответ указал на меня в правильном направлении. Я использовал app.config файл, и он содержал это:
<configuration>
<startup>
<supportedRuntime version="v2.0.50727" sku="Client"/>
</startup>
<configSections>
<section name="modules" type="Microsoft.Practices.Composite.Modularity.ModulesConfigurationSection, Microsoft.Practices.Composite"/>
</configSections>
<modules>
<module assemblyFile="Modules/MyNamespace.Modules.ModuleName.dll" moduleType="MyNamespace.Modules.ModuleName.ModuleClass" moduleName="Name"/>
</modules>
</configuration>
кажется, что проблемой был < startup> элемент, потому что, когда я удалил его, приложение хорошо работало. Я был смущен, потому что Visual Studio, 2008 добавил это, когда я установил флажок для использования "Клиентского Профиля", доступного в 3,5 SP1.
После некоторой слоняющейся без дела проверки и снятия выделения с полем я закончил с конфигурационным файлом как это:
<configuration>
<configSections>
<section name="modules" type="Microsoft.Practices.Composite.Modularity.ModulesConfigurationSection, Microsoft.Practices.Composite"/>
</configSections>
<modules>
<module assemblyFile="Modules/MyNamespace.Modules.ModuleName.dll" moduleType="MyNamespace.Modules.ModuleName.ModuleClass" moduleName="Name"/>
</modules>
<startup>
<supportedRuntime version="v2.0.50727" sku="Client"/>
</startup>
</configuration>
, Который работает!
я не уверен, почему порядок элементов в app.config важен - но кажется, что это.
Вы используете .config файл? Если так, проверьте его на наличие ошибок. Ошибки инициализации такого вида часто инициированы недопустимым XML: при отсутствии ошибок в XAML, конфигурация XML является первым местом для взгляда.
У вас есть два раздела с именем «модули». Поместите оба определения модуля в один раздел под названием «модули».
Я столкнулся с похожей ситуацией. После недели поисков я нашел разрешение, и оно действительно сработало. Это решило 2-3 проблемы, возникающие из-за одной и той же проблемы.
Выполните следующие действия: Проверить (отсутствие) ключа WPF в реестре: HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ NET Framework Setup \ NDP \ v3.0 \ Setup \ Windows Presentation Foundation Моя проблема была связана с отсутствием вышеупомянутого ключа в реестре.
Вы можете изменять и использовать следующие данные в своем реестре: (Фактически, вы можете сохранять в файл и импортировать в реестр)
[HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ NET Framework Setup \ NDP \ v3.0 \ Setup \ Windows Presentation Foundation] @ = "WPF v3.0.6920.1453" "Версия" = "3.0.6920.1453" "WPFReferenceAssembliesPathx86" = "C: \ Program Files \ Reference Assemblies \ Microsoft \ Framework \ v3.0 \" "WPFCommonAssembliesPathx86" = "C: \ Windows \ System32 \" "InstallRoot" = "C: \ Windows \ Microsoft.NET \ Framework \ v3.0 \ WPF \" "InstallSuccess" = dword: 00000001 "ProductVersion" = "3.0.6920.1453" "WPFNonReferenceAssembliesPathx86" = "C: \ Windows \ Microsoft.NET \ Framework \ v3.0 \ WPF \"
Я уверен, что это сработает.
всего наилучшего.
С уважением,
Умеш