Uchanganyishaji wa Vigezo katika Python
Kwenye kitendo kimoja kunaweza kupelekwa
vigezo vilivyopewa majina na vigezo vya msimamo wakati huo huo.
Hufanyika kwa kutumia alama *,
ambayo inaonyesha kuwa vigezo vilivyobainishwa
upande wa kulia wake vichukuliwe kama vile vilivyopewa majina,
isipokuwa ikiwa thamani zao chaguomsingi hazitakiwi
kutumiwa.
Wacha tuunde kitendo ambacho
kitatuma vigezo vyote kwenye konsoli. Tofauti
data itawakilisha kigezo cha kawaida cha
msimamo. Kisha, baada ya alama
*, zimeainishwa tofauti mbili start
na end zenye thamani chaguomsingi.
Hata hivyo, wakati wa kuita kitendo, tutazifanya
hizi tofauti ziwe za majina:
def func(data, *, start=0, end=100):
print(data, start, end)
func(1, start=2, end=3)
Matokeo ya utekelezaji wa kificho:
1 2 3
Ikiwa tutaondoa thamani chaguomsingi ya tofauti
start na wakati huo huo kuiondoa kama
kigezo kilichopewa jina, basi itatoa hitilafu.
Hii hutokea kwa sababu alama *
tayari imebainisha start kama tofauti
iliyopewa jina:
def func(data, *, start, end=100):
print(data, start, end)
func(1, 2, end=3) # itatoa hitilafu
Matokeo ya utekelezaji wa kificho kifuatacho yatakuwa nini:
def func(num1, num2, *, num3):
return (num1 + num2) * num3
print(func(2, 4, num3=3))
Matokeo ya utekelezaji wa kificho kifuatacho yatakuwa nini:
def func(num1, *, num2, num3):
return (num1 - num2) / num3
print(func(12, 4, num3=5))
Matokeo ya utekelezaji wa kificho kifuatacho yatakuwa nini:
def func(*, name='user1', age='18'):
return 'Username is ' + name + ' age is ' + age
print(func(name='john'))