Hässliche Kombination von Generatorausdruck mit for-Schleife

8

Das Folgende erscheint in meinem Python 2.6-Code:

%Vor%

Kann ich viel besser machen? Was ich besonders nicht mag ist, dass ich das gleiche Paar zweimal verwende, einmal für die for-Schleife und wieder für den Generator-Ausdruck. Ich bin unsicher, ob ich es vorziehen würde:

%Vor%

Gibt es eine Möglichkeit, diese Schleife prägnant auszudrücken?

universe ist zufällig eine Liste, wenn es einen Unterschied macht. Reihenfolge der Iteration spielt keine Rolle.

    
Steve Jessop 01.03.2010, 11:54
quelle

3 Antworten

5

Sie können einfache verschachtelte for-Schleifen verwenden:

%Vor%

Ich würde sagen, das ist in diesem Fall die am einfachsten zu lesende Syntax.

    
sth 01.03.2010, 12:02
quelle
3

Ich schlage vor, es vollständig funktionsfähig zu halten oder vollständig zu verstehen. Hier ist eine Implementierung, die vollständig funktioniert.

%Vor%     
Jason R. Coombs 01.03.2010 12:09
quelle
1

itertools.product kann ein Schlüsselwort-Argument "repeat" verwenden, wenn Sie die gleiche Sequenz wie mehrere Parameter haben möchten:

%Vor%

Es ist eine Frage der Meinung, ob dies besser lesbar ist.

Sie können Ihren ursprünglichen Code durch Folgendes ersetzen:

%Vor%     
Dave Kirby 01.03.2010 12:07
quelle

Tags und Links