715 Stimmen

Wie kann ich einer kurzen Python-Liste etwas voranstellen?

list.append() wird an das Ende einer Liste angehängt. Dies erklärt que list.prepend() gibt es aufgrund von Leistungsproblemen bei großen Listen nicht. Wie kann ich bei einer kurzen Liste einen Wert voranstellen?

2voto

Prabhav Rajeev Punkte 39

Lassen Sie uns 4 Methoden durchgehen

  1. Verwendung von insert()

    l = list(range(5)) l [0, 1, 2, 3, 4] l.insert(0, 5) l [5, 0, 1, 2, 3, 4]

  2. Mit [] und +

    l = list(range(5)) l [0, 1, 2, 3, 4] l = [5] + l l [5, 0, 1, 2, 3, 4]

  3. Slicing verwenden

    l = list(range(5)) l [0, 1, 2, 3, 4] l[:0] = [5] l [5, 0, 1, 2, 3, 4]

  4. Verwendung von collections.deque.appendleft()

    from collections import deque

    l = list(range(5)) l [0, 1, 2, 3, 4] l = deque(l) l.appendleft(5) l = list(l) l [5, 0, 1, 2, 3, 4]

1voto

Jérémy Punkte 829

Ich würde etwas ganz schnell vorwärts in Python >= 3.0 getan haben

list=[0,*list]

Es ist vielleicht nicht der effizienteste Weg, aber meiner Meinung nach der pythonischste.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X