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.