Python: använd avkastningskommandon - hur det fungerar
Om du programmerar med Python har du antagligen snubblat över avkastningskommandon och generatorer. Detta praktiska tips visar hur du kan använda det.
Python: Använd avkastningskommandon - hur det fungerar
Om du skapar en lista med "list = [1, 2, 3]", kan elementen matas ut individuellt med kommandon som "för i i listan" ↲ "print (i)".
- Du kan också skapa en lista med kommandot "list = [x * x för x inom räckvidd (3)]". Här är "listan" en iterable. Det praktiska med iterables är att du kan få ut alla element så ofta du vill. Men all data sparas alltid permanent, vilket kan vara ett hinder för stora datamängder.
- Generatorer liknar iterables, men de kan bara köras en gång så att de inte lagrar data permanent. Snarare beräknas elementen under drift.
- Till exempel kan du definiera en generator med kommandot "testgenerator = (x * x för x inom intervallet (3))" och få elementen att matas ut med en klassiker för loop. Alternativt kan du också använda kommandot "nästa (testgenerator)". Detta kan emellertid bara upprepas en gång.
- I princip kan du definiera en generator som en klassisk funktion, men ett avkastningsdeklaration används istället för ett returrätt. Närhelst generatorn anländer till avkastningsuppgift efter en körning kör den den och startar en ny körning. Till skillnad från ett avkastningsförklaring, kommer minnaren att komma ihåg positionen och fortsätta med nästa avkastningsuppgift.
- Definiera till exempel en generator med kommandot "def abc ():" ↲ "utbyte (" A ")" ↲ "utbyte (" B ")" ↲ "utbyte (" C ")".
- Om du nu kör "x = abc ()" en gång och "nästa (x)" flera gånger i följd, kommer bokstäverna A, B och C att matas ut.
Du kan hitta fler programmeringsstudier på vår sida om ämnessidan för programmeringsspråk för Python. Där visar vi dig till exempel hur du enkelt kan programmera ett GUI med Python själv.