Python Lijst Append() met voorbeelden

⚡ Slimme samenvatting

Python De methode `list append()` voegt één object toe aan het einde van een bestaande lijst, waardoor de lengte met één toeneemt. De methode wijzigt de lijst ter plaatse, retourneert geen waarde en accepteert gehele getallen, tekenreeksen, drijvende-kommagetallen of andere objecten.

  • 🔘 Syntax: De functie `append()` neemt één argument en voegt dit toe aan het rechteruiteinde van de basislijst.
  • ☑️ Winstwaarde: De functie `append()` wijzigt de lijst ter plaatse en retourneert `None`, niet een nieuwe lijst.
  • Bouwlijsten: Een for-lus met append() of een list comprehension vult een lijst helemaal opnieuw.
  • 🧪 Stackgedrag: `append()` werkt als een `push`, terwijl `pop()` het laatste item verwijdert (laatst erin, eerst eruit).
  • toevoegen versus uitbreiden: `append()` voegt één object toe; `extend()` voegt elk element van een iterable, zoals een tuple, toe.
  • 🤖 AI-workflows: Machine learning-loops gebruiken de `append()`-functie om kenmerken, voorspellingen en voorbeelden te verzamelen tijdens de training.

Python Lijst toevoegen()

Wat is de Append-methode? Python?

De append-functie in Python Deze methode helpt bij het invoegen van nieuwe elementen in een basislijst. De items worden aan de rechterkant van de bestaande lijst toegevoegd. De `append`-methode accepteert één argument en verhoogt de grootte van de lijst met 1.

Het volgende diagram illustreert Python's toevoegfunctie:

Methode toevoegen Python

Syntax:

List.append(object)

Let op: Het object kan hier een geheel getal, een tekenreeks of een drijvende-komma getal zijn. Een append-functie retourneert geen waarde of lijst. In plaats daarvan wijzigt en vergroot deze de basislijst.

Hoe u de functie Toevoegen gebruikt om een Python lijst?

A Python lijst kan op twee manieren worden gemaakt en gevuld.

  1. Bij de eerste methode wordt gebruik gemaakt van lijstbegrip.
  2. De tweede methode maakt gebruik van de Append-functie en een “for loop”. Bij deze aanpak kunt u een door de gebruiker gedefinieerde functie maken die gebruikmaakt van for-lussen en appends.

Bekijk onderstaand voorbeeld waarin de tweede methode wordt gebruikt:

import math
def calc_sqr_root(b_list):
    bop=[]
    for number in b_list:
        bop.append(math.sqrt(number))
    return bop
    
base_list=(4,9,100,25,36,49,81)
print("the Squared number list is as follows",base_list)
calc_sqr_root(base_list)
print("the numbers with square root in list is as follows",calc_sqr_root(base_list))

Output:

the Squared number list is as follows (4, 9, 100, 25, 36, 49, 81)
the numbers with square root in the list is as follows [2.0, 3.0, 10.0, 5.0, 6.0, 7.0, 9.0]

Code Uitleg:

  • Gebruik vierkante haken om een ​​lege lijst te definiëren.
  • De for-lus- en append-functie worden samen gebruikt onder een door de gebruiker gedefinieerde definieerfunctie.
  • Het vult een lege lijst helemaal opnieuw.
  • Het voegt afzonderlijke items één voor één in door gebruik te maken van de for-lus om items in te voegen.
  • De toegevoegde lijst wordt gebruikt om de waarde voor de door de gebruiker gedefinieerde functie te retourneren.

Hieronder ziet u een voorbeeld waarin de eerste methode wordt gebruikt:

Voorbeeld:

Python code:

import math
def calc_sqr_root(b_list):
    return [math.sqrt(number) for number in b_list]
base_list=(4,9,100,25,36,49,81)
print("the Squared number list is as follows",base_list)
calc_sqr_root(base_list)
print("the numbers with square root in list is as follows",calc_sqr_root(base_list))

Output:

the Squared number list is as follows (4, 9, 100, 25, 36, 49, 81)
the numbers with a square root in the list are as follows [2.0, 3.0, 10.0, 5.0, 6.0, 7.0, 9.0]

Code Uitleg:

  • U kunt lijstbegrip gebruiken als vervanging voor het toevoegen van een functie Python om een ​​lijst helemaal opnieuw te vullen.
  • Het helpt bij het vanaf het begin vullen van een lijst.
  • Het Lijstbegrip onder de aangepaste lijst helpt bij het invullen van elementen in de oorspronkelijke lijst.
  • Het helpt de verwerking van gegevens te optimaliseren in vergelijking met de combinatie van for-lus met de append-functie.

Hoe werkt de append-methode?

De append-functie werkt als volgt:

  • De functie Toevoegen in Python voegt het object toe aan de basislijst.
  • Het neemt het object als argument en plaatst het in de volgende lege ruimte.
  • De lijstitems zijn geordend en toegankelijk via de index.

Hieronder ziet u een afbeelding met de indexen voor de elementen:

Methode toevoegen Werkt

Laten we het onderstaande voorbeeld nemen dat elementen aan de basislijst toevoegt.

Python Voorbeeld:

baselist = ['P','Y','3','4.2','T']
print("The original list", baselist)
print("At index 0:", baselist[0])
print("At index 3:",baselist[3])
baselist.append('n')
print("The appended list", baselist)
print("At index 5 post append:",baselist[5])

Output:

The original list ['P', 'Y', '3', '4.2', 'T']
At index 0: P
At index 3: 4.2
The appended list ['P', 'Y', '3', '4.2', 'T', 'n']
At index 5 post append: n

Code Uitleg:

  • De functie Append heeft het objectgegevenstype van het object toegevoegd aan de gereserveerde ruimte die beschikbaar is in de lijst.
  • Python lijsten zijn iterabele reeksen die verschillende gegevenstypen en objecten kunnen bevatten.

De append-functie voegt een nieuw element toe op index 5, zoals hieronder weergegeven:

Methode toevoegen Werkt

Hoe elementen aan een lijst invoegen zonder toevoegen?

Programmeurs kunnen elementen aan een lijst toevoegen door een tweestapsproces toe te passen als de toevoegfunctie niet wordt gebruikt.

Met behulp van een `len`-functie kunt u de lengte van het laatste item in een lijst bepalen. Wijs de gevonden lege ruimte toe aan het nieuwe object. Het volgende voorbeeld illustreert dit concept:

Voorbeeld:

base_list=[2,4,6]
print("The list before append",base_list)
base_list[len(base_list):]=[10]
print("The list after append",base_list)

Output:

The list before append [2, 4, 6]
The list after append [2, 4, 6, 10]

Hoe Stack definiëren met behulp van de Append-functie?

De volgende eigenschappen zijn van toepassing op een stapel:

  • Een stapel kan worden gedefinieerd als een gegevensstructuur die items over elkaar plaatst.
  • De items kunnen op last-in-first-out-basis worden ingevoegd of verwijderd.
  • Normaal gesproken duwt een stapel een item naar het einde of de bovenkant van de stapel, terwijl een pop-bewerking een item van de stapel verwijdert.
  • Een append-functie fungeert als een push-bewerking van de stapel, terwijl een lijst standaard een pop-functie heeft die is gedefinieerd voor het verwijderen van items.
  • De pop-methode retourneert en verwijdert standaard het laatste item uit de lijst als er geen argumenten voor de functie zijn opgegeven.
  • Er wordt een indexfout gegenereerd wanneer de lijst leeg raakt.
  • Als er een geheel getal-argument aan de functie wordt gegeven, retourneert deze de index van de lijst.
  • Het verwijdert het item dat aanwezig is in die index van de lijst.

Laten we eens kijken naar een programma waarin de append- en pop-functies werken als push- en pop-bewerkingen voor de gedefinieerde stack:

Voorbeeld:

Python code:

#initialize the stack
GGGstack = []
print("Adding item to the list",GGGstack.append(100))
print("Adding item to the list",GGGstack.append(2333))
print("Adding item to the list",GGGstack.append(50000))
print("the base list after adding elements,",GGGstack)
print("base list after calling pop",GGGstack.pop())
print("base list after calling pop",GGGstack.pop())
print("base list after calling pop",GGGstack.pop())
print("base list after calling pop",GGGstack.pop())

Output:

Adding item to the list None

Adding item to the list None

Adding item to the list None

the base list after adding elements, Stack([100, 2333, 50000])

base list after calling pop 50000

base list after calling pop 2333

base list after calling pop 100

Empty stack

base list after calling pop None

Code Uitleg:

  • Er is een stapel GGGStack gedefinieerd
  • Items worden toegevoegd met behulp van de append-methode
  • Elk item wordt één voor één uit de originele lijst gehaald.
  • Wanneer de lijst leeg is, genereert deze een indexfout.

Wat is de uitbreidingsmethode? Python?

Met de uitbreidingsfunctie kunnen nieuwe elementen aan een itereerbare lijst worden toegevoegd. Voorbeelden van itereerbare lijsten zijn woordenboeken, tupels en tekenreeksen. Met deze kenmerken kunt u de elementen van een iterabele lijst wijzigen.

Let op: Deze functie retourneert geen enkele waarde na de uitvoering ervan.

De volgende syntaxis wordt gebruikt voor de extend-functie:

Syntax:

List.extend(iterable list)

Verschil tussen uitbreiden en toevoegen Python

De methoden `append` en `extend` verschillen op de volgende belangrijke punten:

  • De append-functie in Python voegt slechts één element toe aan de oorspronkelijke lijst, terwijl de uitbreidingsfunctie het mogelijk maakt meerdere items toe te voegen.
  • De append-lijst accepteert slechts één argument, terwijl de uitbreidingsfunctie een iterabele lijst gebruikt, zoals tupels en woordenboeken.

Veelgestelde vragen

`append()` voegt een object toe aan het einde van een lijst. `insert()` plaatst een element op een gekozen index en verschuift latere items naar rechts, dus gebruik deze functie alleen wanneer de positie belangrijk is.

Het toevoegen van taken kost geamortiseerde O(1) tijd. Python Het proces wijzigt af en toe de grootte van de array en kopieert elk element met een complexiteit van O(n), maar dit gebeurt zelden, waardoor de gemiddelde kosten per toevoeging constant blijven.

De `append()`-methode retourneert `None` omdat deze de lijst ter plekke bewerkt. Het schrijven van `new = old.append(x)` slaat `None` op en gaat de lijst kwijt, een veelgemaakte beginnersfout die je beter kunt vermijden.

Als je een lijst doorgeeft aan `append()`, wordt deze als één genest element toegevoegd. Dus `[1, 2].append([3, 4])` geeft `[1, 2, [3, 4]]`. Gebruik `extend()` of de plusoperator om de elementen afzonderlijk samen te voegen.

Ja. Herhaalde aanroepen van `append()` hergebruiken de reeds toegewezen ruimte en blijven nagenoeg constant in de uitvoeringstijd, terwijl de plusoperator de hele lijst bij elke stap opnieuw opbouwt, waardoor `append()` binnen lussen veel sneller is.

in CPythonDe Global Interpreter Lock zorgt ervoor dat een enkele append()-aanroep atomair is, waardoor het toevoegen aan een gedeelde lijst vanuit meerdere threads deze niet beschadigt. Sequenties met meerdere stappen vereisen nog steeds een expliciete vergrendeling.

Machine learning-code gebruikt `append()` om kenmerken, voorspellingen en batch-samples te verzamelen binnen lussen, alvorens ze om te zetten in NumPy-arrays of tensors voor AI-trainingspipelines.

Ja. GitHub Copilot en AI-assistenten genereren `append()`-aanroepen, lussen en list comprehensions op basis van een korte opmerking, en kunnen herhaalde `append()`-instructies samenvoegen tot één list comprehension. Test de uitvoer echter nog steeds.

Vat dit bericht samen met: