Paikallisten ja Valinnaisten Argumenttien Yhdistelmä
Pyyhkäise näyttääksesi valikon
Esimerkki funktiosta, joka laskee älypuhelimien kokonaiskustannukset ja mahdollistaa eri ominaisuuksien määrittelyn sekä alustuksessa että funktion kutsussa.
123456789101112131415161718192021222324def calculate_smartphone_cost(model, price, quantity=1, discount=0): total_cost = price * quantity discount_amount = total_cost * (discount / 100) discounted_cost = total_cost - discount_amount print(f'Model: {model}') print(f'Unit price: ${price}') print(f'Quantity: {quantity}') print(f'Total cost before discount: ${total_cost}') if discount > 0: print(f'Discount: {discount}%') print(f'Discount amount: ${discount_amount}') print(f'Discounted cost: ${discounted_cost}') else: print('No discount applied.') print(f'Final cost: ${discounted_cost}') print() # Examples of using the function calculate_smartphone_cost('iPhone 13', 1099, 2) calculate_smartphone_cost('Samsung Galaxy S21', 999, 1, 10) calculate_smartphone_cost('Google Pixel 6', 799, quantity=3, discount=5)
Sääntöjä argumenttien määrittelyyn
Paikalliset argumentit
Paikalliset argumentit on annettava samassa järjestyksessä kuin funktion määrittelyssä. calculate_smartphone_cost-funktiossa model ja price ovat pakollisia paikallisia argumentteja.
Valinnaiset (nimetyt) argumentit
Valinnaiset argumentit voidaan antaa joko paikallisesti tai nimen perusteella. quantity ja discount sisältävät oletusarvot, joita voidaan muuttaa nimetyillä parametreilla.
Oletusarvot
Jos valinnainen argumentti jätetään pois, käytetään sen oletusarvoa. Esimerkissä quantity oletusarvo on 1 ja discount on 0.
Nimetyt parametrit
Nimetyt parametrit parantavat selkeyttä määrittelemällä arvot yksiselitteisesti, erityisesti kun valinnaisia argumentteja on useita.
Nämä säännöt osoittavat, kuinka paikallisten ja nimettyjen argumenttien yhdistäminen tekee funktioista joustavia ja helposti luettavia.
1. Mitä tarkoittaa positionaalisten ja valinnaisten argumenttien yhdistelmä funktioissa?
2. Miten määritellään funktio, jossa on ensin positionaaliset ja sitten valinnaiset argumentit?
Kiitos palautteestasi!
Kysy tekoälyä
Kysy tekoälyä
Kysy mitä tahansa tai kokeile jotakin ehdotetuista kysymyksistä aloittaaksesi keskustelumme