A Python több értéket ad vissza - Hogyan adhat vissza Tuple-t, Listát vagy Szótárat

A Python egyik függvényéből több értéket is visszaadhat.

Ehhez adjon vissza egy olyan értékstruktúrát, amely több értéket tartalmaz, például egy listát, amely tartalmazza a hetente lefutandó mérföldek számát.

def miles_to_run(minimum_miles): week_1 = minimum_miles + 2 week_2 = minimum_miles + 4 week_3 = minimum_miles + 6 return [week_1, week_2, week_3] print(miles_to_run(2)) # result: [4, 6, 8] 

A Python adatstruktúrái adatgyűjtemények tárolására szolgálnak, amelyeket a függvényekből lehet visszaadni. Ebben a cikkben azt vizsgáljuk, hogyan adhatunk vissza több értéket ezekből az adatstruktúrákból: sorok, listák és szótárak.

Tollok

A tuple rendezett, változhatatlan szekvencia. Ez azt jelenti, hogy egy duplán nem lehet változás.

Használjon duplát például egy személyre vonatkozó információk tárolására: a név, az életkor és a hely.

nancy = ("nancy", 55, "chicago") 

Így írhat egy függvényt, amely duplát ad vissza.

def person(): return "bob", 32, "boston" print(person()) # result: ('bob', 32, 'boston') 

Figyelje meg, hogy nem használtunk zárójelet a return utasításban. Ez azért van, mert egy duplát adhat vissza, ha minden elemet vesszővel választ el, amint az a fenti példában látható.

"Valójában a vessző teszi a kettőt, nem a zárójelek" - mutat rá a dokumentáció. A zárójeleket azonban üres sorokkal vagy az összetévesztés elkerülése érdekében kell feltüntetni.

Íme egy példa egy olyan függvényre, amely zárójeleket használ ()a duplák visszaadásához.

def person(name, age): return (name, age) print(person("henry", 5)) #result: ('henry', 5) 

Lista

A lista rendezett, változtatható sorrend. Ez azt jelenti, a lista lehet változtatni.

Használhat egy listát városok tárolására:

cities = ["Boston", "Chicago", "Jacksonville"] 

Vagy teszt pontszámok:

test_scores = [55, 99, 100, 68, 85, 78] 

Vessen egy pillantást az alábbi funkcióra. Tíz számot tartalmazó listát ad vissza.

def ten_numbers(): numbers = [] for i in range(1, 11): numbers.append(i) return numbers print(ten_numbers()) #result: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10] 

Itt van egy másik példa. Ezúttal több érvet adunk meg, amikor meghívjuk a függvényt.

def miles_ran(week_1, week_2, week_3, week_4): return [week_1, week_2, week_3, week_4] monthly_mileage = miles_ran(25, 30, 28, 40) print(monthly_mileage) #result: [25, 30, 28, 40] 

Könnyű összekeverni a tételeket és a felsorolásokat. Végül is mindkettő tároló, amely tárgyakat tárol. Ne feledje azonban ezeket a legfontosabb különbségeket:

  • A hullámok nem változhatnak.
  • A listák változhatnak.

Szótárak

Egy szótár göndör zárójelekbe csomagolva tartalmaz kulcs-érték párokat {}. Minden „kulcsnak” van egy kapcsolódó „értéke”.  

Vegye figyelembe az alkalmazottak alábbi szótárát. Minden alkalmazott neve „kulcs”, pozíciójuk pedig „érték”.

employees = { "jack": "engineer", "mary": "manager", "henry": "writer", } 

Így írhat egy olyan függvényt, amely egy szótárat ad vissza egy kulccsal, értékpárral.

def city_country(city, country): location = {} location[city] = country return location favorite_location = city_country("Boston", "United States") print(favorite_location) # result: {'Boston': 'United States'} 

A fenti példában a „Boston” a kulcs , az „Egyesült Államok” az érték .  

Rengeteg földet lefedtünk. A legfontosabb pont ez: egy Python függvényből több értéket is visszaadhat, és erre többféle lehetőség van.

Az amymhaddad.com oldalon írok a fejlesztéshez szükséges programozási készségekről és a megtanulandó koncepciókról, valamint azok elsajátításának legjobb módjairól.