Mehrfache Entpackungszuweisung in Python, wenn Sie die Sequenzlänge nicht kennen

8

Die Lehrbuchbeispiele für mehrere Entpackungszuweisungen sind etwa wie folgt:

%Vor%

(Mein Q ist nicht numpy specfic; in der Tat würde ich eine reine Python-Lösung bevorzugen.)

W / r / t das Stück Code, den ich jetzt betrachte, sehe ich zwei Komplikationen in diesem einfachen Szenario:

  • Normalerweise kenne ich die Form von M nicht; und

  • Ich möchte eine bestimmte Anzahl von auspacken Artikel (definitiv weniger als alle Artikel) und Ich möchte den Rest in eine single setzen Container

Also zurück zum obigen 5x4-Array, was ich sehr gerne tun könnte, ist beispielsweise, die ersten drei Zeilen von M nach a, b und c (genau wie oben) und dem Rest der Zeilen (ich habe keine Ahnung, wie viele es sein werden, nur eine positive ganze Zahl) in einen einzelnen Container, all_the_rest = [].

Ich bin mir nicht sicher, ob ich das klar erklärt habe; Auf jeden Fall, wenn ich Feedback bekomme, werde ich meine Frage umgehend bearbeiten.

    
doug 28.03.2010, 03:17
quelle

2 Antworten

16

Python 3.x kann dies leicht tun:

%Vor%

Python 2.x braucht ein bisschen mehr Arbeit:

%Vor%     
Ignacio Vazquez-Abrams 28.03.2010, 03:23
quelle
7

Syntax dafür wird zu Python 3 hinzugefügt

%Vor%

, aber in Python 2 gibt es keine ähnliche Lösung.

Sie können das natürlich tun

%Vor%

oder andere ähnliche Lösungen.

    
Mike Graham 28.03.2010 03:25
quelle

Tags und Links