python_eafrica | Unsorted

Telegram-канал python_eafrica - PYTHON EAST AFRICA

690

The official East African Python Community.. Karibu sana!

Subscribe to a channel

PYTHON EAST AFRICA

Syntax

lambda arguments : expression

Читать полностью…

PYTHON EAST AFRICA

Python Lambda

Читать полностью…

PYTHON EAST AFRICA

Parameta ni data ambayo kazi hupokea wakati inaitwa. Vigezo vinaweza kuwa aina yoyote ya data, ikiwa ni pamoja na nambari, herufi, orodha, na kamusi.

Asteriski (\* na **) hutumiwa katika Python kwa madhumuni kadhaa. Katika muktadha wa kazi, asteriski inatumika kuashiria kwamba kazi inachukua idadi isiyojulikana ya vigezo. Vigezo hivi vinapatikana kama tupu ndani ya kazi.

Pass ni neno muhimu katika Python ambalo linaweza kutumika katika hali kadhaa. Katika muktadha wa kazi, pass inaweza kutumika kuunda kazi tupu. Kazi tupu ni kazi ambayo haina msimbo wowote ndani yake. Kazi tupu inaweza kutumika kama kishikilia nafasi kwa kazi ambayo haijaandikwa bado.

Hapa kuna mifano ya jinsi maneno haya yanavyotumika:

Parameta:

def my_function(name, age):
print("Hello, " + name + ". You are " + str(age) + " years old.")

my_function("John Doe", 30) # Output: Hello, John Doe. You are 30 years old.
Katika mfano huu, my_function() inachukua vigezo viwili: name na age. name ni aina ya str, na age ni aina ya int. Wakati my_function() inaitwa, vigezo "John Doe" na 30 vinapewa name na age mtawalia.

Asteriski:

def my_function(*kids):
for kid in kids:
print(kid)

my_function("Emil", "Tobias", "Linus") # Output: Emil
# Tobias
# Linus
Katika mfano huu, my_function() inachukua idadi isiyojulikana ya vigezo. Vigezo hivi vinapatikana kama tupu ndani ya kazi. Wakati my_function() inaitwa na "Emil", "Tobias", "Linus", vigezo hivi vinapewa kids.

Pass:

def my_function():
pass

my_function() # Kazi tupu haifanyi chochote
Katika mfano huu, my_function() ni kazi tupu. Haifanyi chochote wakati inaitwa.

Читать полностью…

PYTHON EAST AFRICA

Mfano wa Kazi ya 18:

# Kazi hii inachanganya aina za vigezo
def my_function(a, b, /, *, c, d):
print(a + b + c + d)

# Wito wa kazi kwa kutumia vigezo vya nafasi na neno kuu
my_function(5, 6, c=7, d=8) # Output: 26
Mfano wa Kazi ya 19 (Recursive):

# Kazi ya kujirudia ili kukokotoa jumla ya namba za triangular
def tri_recursion(k):
if k > 0:
result = k + tri_recursion(k - 1)
print(result)
else:
result = 0
return result

# Piga simu ya kwanza ya kazi kwa k = 6
print("\n\nRecursion Example Results")
tri_recursion(6) # Output: 1, 3, 6, 10, 15, 21
Maelezo zaidi kuhusu mifano:

Mfano wa 18:

- Kazi inachukua vigezo 4: a, b, c, na d.
- a na b ni vigezo vya nafasi pekee, kumaanisha lazima zipitishwe kwa mpangilio bila majina ya vigezo.
- c na d ni vigezo vya neno kuu pekee, kumaanisha lazima zipitishwe kwa majina yao ya vigezo.
- Kazi inaongeza vigezo vyote na kuchapisha jumla.

Mfano wa 19:

- Kazi ya tri_recursion inajiita yenyewe ili kukokotoa jumla ya nambari za triangular.
- Nambari za triangular ni nambari zinazounda umbo la pembetatu inapopangwa kwa safu.
- Kazi hufanya kazi kwa kugawanya tatizo katika matatizo madogo:
- Ikiwa k ni kubwa kuliko 0, inaongeza k kwa jumla ya nambari za triangular kutoka 1 hadi k - 1.
- Ikiwa k ni sawa na 0, jumla ni 0.
- Kazi inachapisha kila jumla inapokokotoa, na kuonyesha jinsi inavyojenga jumla ya mwisho.

Читать полностью…

PYTHON EAST AFRICA

Aina mbali mabli za function:

1. Ufafanuzi wa Kazi Bila Vigezo:

def my_function():
print("Hello from a function")
- Kazi hii haina vigezo, ina maana haichukui data yoyote wakati inaitwa.
- Inachapisha tu ujumbe "Hello from a function".

2. Kuita Kazi:

def my_function():
print("Hello from a function")

my_function() # Kuita kazi
- Mstari wa mwisho unaita kazi.
- Hii inasababisha kazi kutekelezwa na ujumbe kuchapishwa.

3. Kazi na Vigezo:

def my_function(fname):
print(fname + " Refsnes")

my_function("Emil")
my_function("Tobias")
my_function("Linus")
- Kazi hii inachukua parameta moja inayoitwa fname.
- Inachapisha jina la kwanza lililopokelewa likifuatiwa na "Refsnes".
- Inaitwa mara tatu na majina tofauti.

4. Kazi yenye Vigezo Viwili:

def my_function(fname, lname):
print(fname + " " + lname)

my_function("Emil", "Refsnes")
- Kazi hii inachukua vigezo viwili: fname na lname.
- Inachapisha jina kamili kwa kuunganisha jina la kwanza na la mwisho.

5. Kosa: Vigezo Visivyotosha:

def my_function(fname, lname):
print(fname + " " + lname)

my_function("Emil") # Vigezo visivyotosha, inatarajia 2
- Hii itasababisha kosa kwa sababu kazi inatarajia vigezo viwili, lakini inapewa moja tu.

6. Vigezo vya Urefu Usiojulikana:

def my_function(*kids):
print("The youngest child is " + kids[2])

my_function("Emil", "Tobias", "Linus")
- Asteriski (*) kabla ya kids inaashiria kwamba kazi inaweza kupokea idadi isiyojulikana ya vigezo.
- Vigezo hivi vinapatikana kama tupu ndani ya kazi.

7. Vigezo vya Neno Muhimu:

def my_function(child3, child2, child1):
print("The youngest child is " + child3)

my_function(child1 = "Emil", child2 = "Tobias", child3 = "Linus")
- Vigezo vya neno kuu vinaruhusu mpangilio wowote wa vigezo wakati wa kupiga simu.
- Inafaa kwa vigezo vinavyoeleweka kwa urahisi kwa jina lao.

8. Vigezo vya Neno Muhimu vya Urefu Usiojulikana:

def my_function(**kid):
print("His last name is " + kid["lname"])

my_function(fname = "Tobias", lname = "Refsnes")
- Nyota mbili (**) kabla ya kid inaashiria kwamba kazi inaweza kupokea idadi isiyojulikana ya vigezo vya neno kuu.
- Vigezo hivi vinapatikana kama kamusi ndani ya kazi.

9. Vigezo vya Chaguo-msingi:

def my_function(country = "Norway"):
print("I am from " + country)

my_function("Tanzania")
my_function("India")
my_function() # Inatumia thamani chaguo-msingi
my_function("Brazil")

Читать полностью…

PYTHON EAST AFRICA

Mipangilio ya programu: Mipangilio ya programu mara nyingi huwa na viwango vingi, kama vile mipangilio ya programu ya jumla, mipangilio ya watumiaji, na mipangilio ya vipengele. Mipangilio ya programu ya jumla ni mipangilio ambayo inatumika kwa programu nzima. Mipangilio ya watumiaji ni mipangilio ambayo inaweza kufanywa na watumiaji wa programu. Mipangilio ya vipengele ni mipangilio ambayo inatumika kwa vipengele maalum vya programu.

Katika Python, mipangilio ya programu inaweza kuwakilishwa na nested dictionaries. Kwa mfano, mpango unaweza kuwa na mipangilio yafuatayo:

settings = {
"general": {
"language": "English",
"timezone": "UTC",
},
"users": {
"johndoe": {
"theme": "dark",
"font_size": 16,
},
"janedoe": {
"theme": "light",
"font_size": 14,
},
},
"features": {
"notifications": True,
"autosave": True,
},
}
Katika mfano huu, settings ni dictionary kuu ambayo inajumuisha dictionaries tatu ndogo. Dictionary ya kwanza, general, ina mipangilio ya programu ya jumla. Dictionary ya pili, users, ina mipangilio ya watumiaji. Dictionary ya tatu, features, ina mipangilio ya vipengele.

Mipangilio ya programu inaweza kufikiwa kwa kutumia mlolongo wa funguo. Kwa mfano, ili kupata lugha ya programu, tunaweza kutumia msimbo ufuatao:

language = settings["general"]["language"]
Tunaweza pia kutumia keys(), values(), na items() methods za dictionary kufikia mipangilio ya programu. Kwa mfano, ili kupata orodha ya funguo za mipangilio ya watumiaji, tunaweza kutumia msimbo ufuatao:

user_keys = settings["users"].keys()
Ufafanuzi uliokamilika:

Nested dictionaries hutumika kuwakilisha data changamano katika miundo ya kihierarkia. Mifano ya kawaida ya data ambayo inaweza kuwakilishwa na nested dictionaries ni pamoja na:

* Miti ya familia: Kila mtoto katika familia anaweza kuwakilishwa na dictionary ambayo ina data kuhusu mtoto huyo, kama vile jina, umri, na tarehe ya kuzaliwa. Dictionary ya familia yenyewe inaweza kuwakilisha mti mzima wa familia.
* Mipangilio ya programu: Mipangilio ya programu mara nyingi huwa na viwango vingi, kama vile mipangilio ya programu ya jumla, mipangilio ya watumiaji, na mipangilio ya vipengele. Mipangilio ya programu ya jumla ni mipangilio ambayo inatumika kwa programu nzima. Mipangilio ya watumiaji ni mipangilio ambayo inaweza kufanywa na watumiaji wa programu. Mipangilio ya vipengele ni mipangilio ambayo inatumika kwa vipengele maalum vya programu.

Katika Python, mipangilio ya programu inaweza kuwakilishwa na nested dictionaries. Kwa kutumia nested dictionaries, tunaweza kuunda miundo ya data ya kihierarkia ambayo inawakilisha mipangilio ya programu kwa njia rahisi na ya kuelimisha.

Читать полностью…

PYTHON EAST AFRICA

Python - Nested Dictionaries

Читать полностью…

PYTHON EAST AFRICA

Python - Copy Dictionaries

Читать полностью…

PYTHON EAST AFRICA

Python - Loop Dictionaries

Читать полностью…

PYTHON EAST AFRICA

Python - Remove Dictionary Items

Читать полностью…

PYTHON EAST AFRICA

Python - Add Dictionary Items

Читать полностью…

PYTHON EAST AFRICA

Python - Change Dictionary Items

Читать полностью…

PYTHON EAST AFRICA

Python - Access Dictionary Items

Читать полностью…

PYTHON EAST AFRICA

Python Dictionaries

Читать полностью…

PYTHON EAST AFRICA

Hapa kuna mbinu muhimu za seti katika Python:

Kuongeza vitu:

- add(element): Huongeza kipengee kimoja kwenye seti.
- update(*others): Huongeza vitu kutoka kwa seti nyingine au iterable kwenye seti.

Kuondoa vitu:

- remove(element): Huondoa kipengee kilichobainishwa (husababisha hitilafu ikiwa hakipo).
- discard(element): Huondoa kipengee kilichobainishwa, ikiwa kipo (haisababishi hitilafu ikiwa hakipo).
- pop(): Huondoa na kurejesha kipengee kisichojulikana kutoka kwa seti (husababisha hitilafu ikiwa seti haina vitu).
- clear(): Huondoa vitu vyote kutoka kwa seti.

Kuangalia uwepo:

- in: Inaangalia kama kipengee kipo kwenye seti.

Kupata urefu:

- len(set): Hupata idadi ya vitu kwenye seti.

Uendeshaji wa seti:

- union(*others): Hurejesha seti mpya yenye vitu vya kipekee kutoka kwa seti zote.
- intersection(*others): Hurejesha seti mpya yenye vitu vya kawaida kwenye seti zote.
- difference(*others): Hurejesha seti mpya yenye vitu vilivyo kwenye seti asili lakini si kwenye seti nyingine.
- symmetric_difference(other): Hurejesha seti mpya yenye vitu vilivyo kwenye seti moja lakini si vyote viwili.

Nakala za seti:

- copy(): Hurejesha nakala ya seti.

Mifano:

seti = {1, 2, 3}
seti.add(4) # {1, 2, 3, 4}
seti.update([5, 6]) # {1, 2, 3, 4, 5, 6}

seti.remove(3) # {1, 2, 4, 5, 6}
seti.discard(7) # Hakuna mabadiliko (7 haikuwepo)

kipengee_kilichoondolewa = seti.pop() # Huondoa kipengee kisichojulikana

if 2 in seti:
print("2 ipo kwenye seti")

idadi_ya_vitu = len(seti)

seti_unganishwa = seti.union({7, 8}) # {1, 2, 4, 5, 6, 7, 8}
seti_ingiliano = seti.intersection({4, 5, 9}) # {4, 5}

Читать полностью…

PYTHON EAST AFRICA

Python Lambda ni njia ya kutengeneza functions ndogo ndogo za kujitegemea (anonymous functions) ambazo hazihitaji kuanzishwa kwa kutumia keyword "def". Hapa chini ni mifano kadhaa ya Python Lambda:

1. Lambda ambayo ina parameter moja na inarudisha jumla ya namba hiyo na 10:

x = lambda a: a + 10
print(x(5)) # Output: 15
2. Lambda ambayo ina parameter mbili na inarudisha uzito wa kipande cha pembetatu:

x = lambda a, b: 0.5 * a * b
print(x(4, 6)) # Output: 12.0
3. Lambda ambayo inachukua parameter nyingi na inarudisha orodha ya namba zinazolingana na kigezo kilichotolewa:

x = lambda *args: [num for num in args if num % 2 == 0]
print(x(1, 2, 3, 4, 5, 6)) # Output: [2, 4, 6]
4. Lambda ambayo inatumia map() function kuzidisha kila namba katika orodha mara mbili:

numbers = [1, 2, 3, 4, 5]
doubled_numbers = list(map(lambda x: x * 2, numbers))
print(doubled_numbers) # Output: [2, 4, 6, 8, 10]
5. Lambda ambayo inatumika kama key function katika sorted() function ili kuwaweka watu kwa herufi ya kwanza ya majina yao:

people = ['John Smith', 'Alice Cooper', 'David Brown', 'Bob Adams']
sorted_people = sorted(people, key=lambda x: x.split()[1])
print(sorted_people) # Output: ['Bob Adams', 'Alice Cooper', 'David Brown', 'John Smith']

Читать полностью…

PYTHON EAST AFRICA

Leo tupo kwenye Python Lambda

Читать полностью…

PYTHON EAST AFRICA

Ufafanuzi wa baazi ya maneno yaliyo tumika katika kufundisha

1. parameta, 2. BAsteriski



Vile vile tutafafanua kuhusu pass 👇

Читать полностью…

PYTHON EAST AFRICA

9. Vigezo vya Chaguo-msingi (inaendelea):

- Vigezo vya chaguo-msingi vina thamani iliyowekwa ikiwa hakuna thamani inayotolewa wakati wa kupiga simu.
- Katika mfano, country ina thamani chaguo-msingi ya "Norway".
- Kazi inaweza kuitwa bila kutaja nchi, na itatumia thamani chaguo-msingi.

10. Mzunguko Ndani ya Kazi:

def my_function(food):
for x in food:
print(x)

fruits = ["apple", "banana", "cherry"]

my_function(fruits)
- Kazi hii inachukua parameta moja inayoitwa food.
- Inatumia mzunguko wa for ili kuchapisha kila kipengele cha food.
- Inaitwa na orodha ya matunda, na inachapisha kila tunda kwenye mstari mpya.

11. Kazi Zinazorudisha Thamani:

def my_function(x):
return 5 * x

print(my_function(3))
print(my_function(5))
print(my_function(9))
- Kazi hii inachukua parameta moja inayoitwa x.
- Inarudisha thamani ya 5 * x.
- Thamani ya kurudi inaweza kuhifadhiwa katika kigeu au kuchapishwa moja kwa moja.

12. Kazi Tupu:

def myfunction():
pass
- Kazi hii haina msimbo wowote ndani yake.
- Inafafanuliwa tu, lakini haifanyi chochote.
- Inaweza kutumika kama kishikilia nafasi kwa kazi ambayo haijaandikwa bado.

13. Vigezo vya Nafasi Pekee:

def my_function(x, /):
print(x)

my_function(3)
- Slash (/) kabla ya x inaashiria kuwa x ni parameta ya nafasi pekee.
- Vigezo vya nafasi pekee vinaweza kutolewa tu kwa nafasi, si kwa jina la neno kuu.

14. Kosa: Hoja ya Neno Muhimu kwa Parameta ya Nafasi Pekee:

def my_function(x, /):
print(x)

my_function(x = 3) # Hitilafu: x ni parameta ya nafasi pekee
- Hii itasababisha kosa kwa sababu x inaweza tu kutolewa kwa nafasi.

15. Vigezo vya Neno Muhimu Pekee:

def my_function(*, x):
print(x)

my_function(x = 3)
- Nyota (*) kabla ya x inaashiria kuwa x ni parameta ya neno kuu pekee.
- Vigezo vya neno kuu pekee vinaweza kutolewa tu kwa jina la neno kuu, si kwa nafasi.

16. Parameta ya Kawaida:

def my_function(x):
print(x)

my_function(3)
- Parameta ya kawaida inaweza kutolewa kwa nafasi au kwa jina la neno kuu.

17. Kosa: Hoja ya Nafasi kwa Parameta ya Neno Muhimu Pekee:

def my_function(*, x):
print(x)

my_function(3) # Hitilafu: x ni parameta ya neno kuu pekee
- Hili litasababisha kosa kwa sababu x inaweza tu kutolewa kwa jina la neno kuu.

Читать полностью…

PYTHON EAST AFRICA

Python Dictionary Methods

Hapa kuna mbinu muhimu unazoweza kutumia kufanya kazi na dictionaries katika Python:


1. Kubadilisha Yaliyomo kwenye Dictionary:

- clear(): Huondoa vitu vyote kutoka kwa dictionary.

   my_dict = {"a": 1, "b": 2, "c": 3}
my_dict.clear() # Sasa my_dict haina vitu

- pop(key): Huondoa kipengee kilicho na ufunguo uliobainishwa na kurudisha thamani yake.

   value = my_dict.pop("b")  # Huondoa "b: 2" na kurudisha 2

- popitem(): Huondoa na kurudisha jozi ya vitufe-thamani ya kiholela.

   removed_item = my_dict.popitem()  # Huondoa na kurudisha jozi moja kiholela

- update(other_dict): Inaongeza jozi za vitufe na thamani kutoka kwa dictionary nyingine.

   my_dict.update({"d": 4, "e": 5})  # Inaongeza jozi mpya kwenye my_dict

2. Kupata Taarifa Kuhusu Dictionary:

- keys(): Hurejesha orodha ya funguo kwenye dictionary.

   keys = my_dict.keys()  # Hurejesha ["a", "c", "d", "e"]

- values(): Hurejesha orodha ya maadili kwenye dictionary.

   values = my_dict.values()  # Hurejesha [1, 3, 4, 5]

- items(): Hurejesha orodha ya jozi za vitufe-thamani kama tuple.

   items = my_dict.items()  # Hurejesha [("a", 1), ("c", 3), ("d", 4), ("e", 5)]

3. Kupata Thamani:

- get(key, default): Hupata thamani inayohusishwa na ufunguo, ikirejesha thamani chaguo-msingi ikiwa ufunguo haupo.

   value = my_dict.get("x", "Not found")  # Itarejesha "Not found" kwa sababu "x" haipo

4. Kuongeza Vitu:

- setdefault(key, default): Hurejesha thamani ya ufunguo uliobainishwa. Ikiwa ufunguo haupo, unaingizwa na thamani chaguo-msingi.

   value = my_dict.setdefault("y", 6)  # Inaongeza "y: 6" ikiwa haipo, na kurudisha 6

- [key] = value: Huongeza au kubadilisha thamani inayohusishwa na ufunguo uliopo.

   my_dict["z"] = 7  # Inaongeza "z: 7" kwenye my_dict

5. Kuunda Dictionary Mpya:

- fromkeys(keys, value): Hurejesha dictionary mpya yenye funguo zilizotolewa na thamani sawa kwa kila ufunguo.

   new_dict = dict.fromkeys(["x", "y", "z"], 0)  # {"x": 0, "y": 0, "z": 0}

6. Kunakili Dictionary:

- copy(): Hurejesha nakala ya dictionary.

copied_dict = my_dict.copy() # Inaunda nakala ya my_dict

Читать полностью…

PYTHON EAST AFRICA

Ufafanuzi wa Python - Nested Dictionaries

Katika Python, unaweza kuunda dictionaries ndani ya dictionaries, inayojulikana kama nested dictionaries. Hii inakuruhusu kuunda miundo ya data changamano na kuwakilisha mahusiano ya kihierarkia kati ya data.

Mifano:

Mfano wa kwanza:

myfamily = {
"child1": {
"name": "Emil",
"year": 2004
},
"child2": {
"name": "Tobias",
"year": 2007
},
"child3": {
"name": "Linus",
"year": 2011
}
}
Katika mfano huu, child1, child2, na child3 ni dictionaries zilizo ndani ya dictionary myfamily. Kila dictionary inawakilisha mtoto mmoja katika familia.

Mfano wa pili:

child1 = {
"name": "Emil",
"year": 2004
}
child2 = {
"name": "Tobias",
"year": 2007
}
child3 = {
"name": "Linus",
"year": 2011
}

myfamily = {
"child1": child1,
"child2": child2,
"child3": child3
}
Katika mfano huu, child1, child2, na child3 ni dictionaries tofauti. Kila dictionary inawakilisha mtoto mmoja katika familia. myfamily ni dictionary moja ambayo inajumuisha dictionaries hizi tatu.

Kupata na Kubadilisha Vitu:

Unaweza kufikia vitu ndani ya nested dictionaries kwa kutumia mlolongo wa funguo, kama vile:

name = myfamily["child1"]["name"]  # Inapata "Emil"
myfamily["child2"]["year"] = 2008 # Inabadilisha mwaka wa Tobias kuwa 2008
Kuongeza na Kuondoa Vitu:

Unaweza kuongeza au kuondoa vitu kutoka kwa nested dictionaries kwa kutumia njia sawa na kwa dictionaries za kawaida:

myfamily["child4"] = {"name": "Lukas", "year": 2013}  # Inaongeza mtoto wa nne
del myfamily["child3"] # Inaondoa mtoto wa tatu
Kuzunguka Vitu:

Unaweza kurudia nested dictionaries kwa kutumia keys(), values(), na items() methods, sawa na dictionaries za kawaida. Jambo muhimu ni kwamba unaweza kuzunguka kwa undani zaidi ili kufikia vitu ndani ya dictionaries zilizopachikwa:

for key, value in myfamily.items():
if isinstance(value, dict):
for inner_key, inner_value in value.items():
print(f"{key} -> {inner_key}: {inner_value}")
else:
print(f"{key}: {value}")
Matumizi ya Nested Dictionaries:

Nested dictionaries hutumika sana kuwakilisha data changamano katika miundo ya kihierarkia. Kwa mfano:

* Kuwakilisha miundo ya data ya JSON
* Kuhifadhi mipangilio ya programu
* Kuunda miundo ya data ya mti
* Kuwakilisha hifadhidata za uhusiano
* Na zaidi!

Ufafanuzi uliosasishwa kwa kutumia mifano:

Nested dictionaries hutumika kuwakilisha data changamano katika miundo ya kihierarkia. Mifano ya kawaida ya data ambayo inaweza kuwakilishwa na nested dictionaries ni pamoja na:

* Miti ya familia: Kila mtoto katika familia anaweza kuwakilishwa na dictionary ambayo ina data kuhusu mtoto huyo, kama vile jina, umri, na tarehe ya kuzaliwa. Dictionary ya familia yenyewe inaweza kuwakilisha mti mzima wa familia.

Читать полностью…

PYTHON EAST AFRICA

Ufafanuzi wa Python - Copy Dictionaries

Katika Python, kuna njia kadhaa za kunakili dictionaries:

1. Kutumia = Operator:

- Huunda marejeleo kwa dictionary asili, sio nakala huru.
- Mabadiliko katika nakala yanaathiri dictionary asili pia.

car_dict1 = {"brand": "Ford", "model": "Mustang", "year": 1964}
car_dict2 = car_dict1 # Hii huunda rejeleo, sio nakala huru

car_dict2["color"] = "red" # Mabadiliko yatatekelezwa kwenye car_dict1 pia
2. Kutumia dict() Constructor:

- Huunda nakala mpya ya dictionary.
- Mabadiliko katika nakala hayaathiri dictionary asili.

car_dict1 = {"brand": "Ford", "model": "Mustang", "year": 1964}
car_dict2 = dict(car_dict1) # Hii huunda nakala huru

car_dict2["color"] = "red" # Mabadiliko hayataathiri car_dict1
3. Kutumia copy() Method:

- Huunda nakala mpya ya dictionary.
- Mabadiliko katika nakala hayaathiri dictionary asili.

car_dict1 = {"brand": "Ford", "model": "Mustang", "year": 1964}
car_dict2 = car_dict1.copy() # Hii huunda nakala huru

car_dict2["color"] = "red" # Mabadiliko hayataathiri car_dict1
4. Kutumia copy.deepcopy() Function:

- Huunda nakala ya kina ya dictionary, ikijumuisha nakala za vitu vinavyoweza kubadilishwa ndani yake.
- Muhimu kwa dictionaries zilizo na orodha, dictionaries zingine, au vitu vingine vinavyoweza kubadilishwa kama maadili.

import copy

car_dict1 = {"brand": "Ford", "model": "Mustang", "details": {"engine": "V8"}}
car_dict2 = copy.deepcopy(car_dict1) # Hii huunda nakala ya kina

car_dict2["details"]["engine"] = "V6" # Mabadiliko hayataathiri car_dict1
Kumbuka:

- Kwa dictionaries rahisi zenye maadili yasiyoweza kubadilishwa, dict() constructor au copy() method inatosha.
- Kwa dictionaries zilizo na vitu vinavyoweza kubadilishwa, tumia copy.deepcopy() function ili kuhakikisha nakala kamili.

Читать полностью…

PYTHON EAST AFRICA

Ufafanuzi wa Python - Loop Dictionaries

Katika Python, unaweza kurudia dictionaries kutumia njia tofauti ili kufikia vitu vyote ndani yake:

1. Looping kupitia Keys:

- Tumia keys() method kupata orodha ya funguo.
- Tumia for loop kurudia funguo hizi.
- Fikia thamani inayolingana na kila ufunguo kwa kutumia ufunguo wenyewe ndani ya kitanzi.

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}

for key in car_dict.keys():
value = car_dict[key]
print(key, value)
2. Looping kupitia Values:

- Tumia values() method kupata orodha ya maadili.
- Tumia for loop kurudia maadili haya moja kwa moja.

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}

for value in car_dict.values():
print(value)
3. Looping kupitia Items:

- Tumia items() method kupata orodha ya tuples, ambapo kila tuple ina ufunguo na thamani yake.
- Tumia for loop kurudia tuples hizi.
- Fungua kila tuple ndani ya kitanzi ili kupata ufunguo na thamani ya mtu binafsi.

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}

for key, value in car_dict.items():
print(key, value)
Kumbukumbu muhimu:

- keys(), values(), na items() method hurejesha maoni ya vitu vya dictionary, si orodha halisi. Hii inamaanisha kuwa mabadiliko yoyote unayofanya kwenye dictionary wakati wa kuzunguka yataonekana kwenye kitanzi.

Читать полностью…

PYTHON EAST AFRICA

Ufafanuzi wa Python - Remove Dictionary Items

Katika Python, tunaweza kuondoa vitu kutoka kwa dictionaries kwa kutumia njia zifuatazo:

1. pop() method:

- Huondoa ufunguo na thamani yake kutoka kwa dictionary.
- Inarudisha thamani iliyoondolewa.
- Mfano:

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}
model = car_dict.pop("model")
print(car_dict) # {'brand': 'Ford', 'year': 1964}
print(model) # Mustang
2. del keyword:

- Huondoa ufunguo na thamani yake kutoka kwa dictionary.
- Haitoi thamani iliyoondolewa.
- Mfano:

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}
del car_dict["model"]
print(car_dict) # {'brand': 'Ford', 'year': 1964}
3. clear() method:

- Huondoa vitu vyote kutoka kwa dictionary.
- Inaachwa tupu.
- Mfano:

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}
car_dict.clear()
print(car_dict) # {}
Kumbuka:

- Ikiwa ufunguo haupo kwenye dictionary, pop() method itarudisha KeyError, wakati del keyword haitoi hitilafu yoyote.

Читать полностью…

PYTHON EAST AFRICA

Ufafanuzi wa Python - Add Dictionary Items

Tunaweza kuongeza vitu kwenye dictionaries katika Python kwa kutumia njia zifuatazo:

* Kutumia ufunguo:

Tunaweza kuongeza ufunguo mpya na thamani yake kwenye dictionary kwa kutumia ufunguo wake. Kwa mfano, ili kuongeza ufunguo mpya "color" na thamani "red" kwenye dictionary ifuatayo:

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}
Tunaweza kutumia msimbo ufuatao:

car_dict["color"] = "red"
Hii itaongeza ufunguo "color" na thamani "red" kwenye dictionary.

* Kutumia update() method:

update() method inaruhusu kuongeza ufunguo mpya na thamani yake kwenye dictionary. Kwa mfano, ili kuongeza ufunguo mpya "color" na thamani "red" kwenye dictionary ifuatayo:

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}
Tunaweza kutumia msimbo ufuatao:

car_dict.update({"color": "red"})
Hii itaongeza ufunguo "color" na thamani "red" kwenye dictionary.

* Kutumia setdefault() method:

setdefault() method inaruhusu kuongeza ufunguo mpya na thamani yake kwenye dictionary ikiwa ufunguo haupo. Ikiwa ufunguo upo, setdefault() method inarudisha thamani ya ufunguo. Kwa mfano, ili kuongeza ufunguo mpya "color" na thamani "red" kwenye dictionary ifuatayo:

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}
Tunaweza kutumia msimbo ufuatao:

color = car_dict.setdefault("color", "red")
Hii itaongeza ufunguo "color" na thamani "red" kwenye dictionary ikiwa ufunguo haupo. Ikiwa ufunguo upo, setdefault() method itarudisha thamani ya ufunguo, ambayo ni "red" katika kesi hii.

Mifano

Ongeza ufunguo mpya:

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}

car_dict["color"] = "red"

print(car_dict)
# {'brand': 'Ford', 'model': 'Mustang', 'year': 1964, 'color': 'red'}
Ongeza ufunguo mpya kwa kutumia update() method:

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}

car_dict.update({"color": "red"})

print(car_dict)
# {'brand': 'Ford', 'model': 'Mustang', 'year': 1964, 'color': 'red'}
Ongeza ufunguo mpya kwa kutumia setdefault() method:

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}

color = car_dict.setdefault("color", "red")

print(car_dict)
# {'brand': 'Ford', 'model': 'Mustang', 'year': 1964, 'color': 'red'}

print(color)
# 'red'

Читать полностью…

PYTHON EAST AFRICA

Mifano ya kubadilisha vitu kutoka kwa dictionaries katika Python kwa kutumia update() method:

# Badilisha thamani ya ufunguo "model"
car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}

car_dict.update({"model": "Camaro"})

print(car_dict)
# {'brand': 'Ford', 'model': 'Camaro', 'year': 1964}

# Ongeza ufunguo mpya "color"
car_dict.update({"color": "red"})

print(car_dict)
# {'brand': 'Ford', 'model': 'Camaro', 'year': 1964, 'color': 'red'}

# Badilisha thamani ya ufunguo "year" na ongeza ufunguo mpya "mileage"
car_dict.update({"year": 2023, "mileage": 100000})

print(car_dict)
# {'brand': 'Ford', 'model': 'Camaro', 'year': 2023, 'color': 'red', 'mileage': 100000}
Mifano ya kutumia update() method kubadilisha vitu kutoka kwa dictionaries changamano:

# Badilisha thamani ya ufunguo "name" katika dictionary ya ndani
person_dict = {"name": "Mojo", "age": 30, "address": {"street": "123 Main St", "city": "San Francisco", "state": "CA"}}

person_dict["address"].update({"city": "Los Angeles"})

print(person_dict)
# {'name': 'Mojo', 'age': 30, 'address': {'street': '123 Main St', 'city': 'Los Angeles', 'state': 'CA'}}

# Ongeza ufunguo mpya "zipcode" katika dictionary ya ndani
person_dict["address"].update({"zipcode": "90001"})

print(person_dict)
# {'name': 'Mojo', 'age': 30, 'address': {'street': '123 Main St', 'city': 'Los Angeles', 'state': 'CA', 'zipcode': '90001'}}

Читать полностью…

PYTHON EAST AFRICA

Ufafanuzi wa Python - Access Dictionary Items


Ili kupata vitu kutoka kwa dictionaries katika Python, tunaweza kutumia njia zifuatazo:

* Kutumia ufunguo:

Tunaweza kupata thamani ya ufunguo kwa kutumia ufunguo wake. Kwa mfano, ili kupata thamani ya ufunguo "model" kutoka kwa dictionary ifuatayo:

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}
Tunaweza kutumia msimbo ufuatao:

model = car_dict["model"]
Hii itarejesha thamani "Mustang".

* Kutumia get() method:

get() method inarudisha thamani ya ufunguo ikiwa ufunguo upo kwenye dictionary. Ikiwa ufunguo haupo, get() method inarudisha None.

model = car_dict.get("model")
Hii itarejesha thamani "Mustang".

* Kutumia in operator:

in operator inarudi True ikiwa ufunguo upo kwenye dictionary.

if "model" in car_dict:
model = car_dict["model"]
Hii itarejesha thamani "Mustang".

Mifano

Get the value of the "model" key:

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}

model = car_dict["model"]

print(model)
# Mustang
Get Keys:

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}

keys = car_dict.keys()

print(keys)
# dict_keys(['brand', 'model', 'year'])
Get Values:

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}

values = car_dict.values()

print(values)
# ['Ford', 'Mustang', 1964]
Get Items:

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}

items = car_dict.items()

print(items)
# dict_items([('brand', 'Ford'), ('model', 'Mustang'), ('year', 1964)])
Check if Key Exists:

car_dict = {"brand": "Ford", "model": "Mustang", "year": 1964}

if "model" in car_dict:
print("Ufunguo 'model' upo kwenye dictionary.")
else:
print("Ufunguo 'model' haupo kwenye dictionary.")
Hii itatoa matokeo yafuatayo:

Ufunguo 'model' upo kwenye dictionary.

Читать полностью…

PYTHON EAST AFRICA

Ufafanuzi wa Dictionaries katika Python

Dictionaries ni aina ya data structure katika Python ambayo hukuruhusu kuhifadhi data katika jozi ya ufunguo-thamani. Ufunguo ni kipengele cha kipekee ambacho hutumiwa kufikia thamani. Thamani inaweza kuwa aina yoyote ya data, ikiwa ni pamoja na nambari, maandishi, orodha, au hata dictionaries nyingine.

Mifano ya Dictionaries

Hapa kuna mifano michache ya dictionaries katika Python:

# Dictionaries rahisi
thisdict = {"brand": "Ford", "model": "Mustang", "year": 1964}

# Dictionaries na orodha
thisdict = {"brand": "Ford", "models": ["Mustang", "F-150", "Explorer"]}

# Dictionaries na thamani changamano
thisdict = {"name": "Mojo", "age": 30, "address": {"street": "123 Main St", "city": "San Francisco", "state": "CA"}}
Mifano ya matumizi ya Dictionaries

Dictionaries inaweza kutumika kwa madhumuni mbalimbali katika Python. Baadhi ya mifano ni pamoja na:

🔹 Kuhifadhi data kuhusu vitu au watu
🔹 Kuwakilisha mahusiano kati ya vitu
🔹 Kuhifadhi mpangilio wa data
🔹 Kuandaa hesabu

Mifano ya kutumia Dictionaries katika programu

Hapa kuna mifano michache ya jinsi unaweza kutumia dictionaries katika programu:

* Kuhifadhi data kuhusu vitu au watu:

# Dictionary ya kuhifadhi data kuhusu gari
car_dict = {
"brand": "Ford",
"model": "Mustang",
"year": 1964,
"color": "red",
"mileage": 100000
}

# Pata thamani ya ufunguo "brand"
print(car_dict["brand"])
# Ford

# Badilisha thamani ya ufunguo "color"
car_dict["color"] = "blue"

# Onyesha dictionary
print(car_dict)
# {'brand': 'Ford', 'model': 'Mustang', 'year': 1964, 'color': 'blue', 'mileage': 100000}
* Kuwakilisha mahusiano kati ya vitu:

# Dictionary ya kuwakilisha mahusiano kati ya watu
people_dict = {
"Mojo": {
"age": 30,
"address": {"street": "123 Main St", "city": "San Francisco", "state": "CA"}
},
"John": {
"age": 25,
"address": {"street": "456 Elm St", "city": "New York", "state": "NY"}
}
}

# Pata data kuhusu Mojo
print(people_dict["Mojo"]["age"])
# 30

# Pata data kuhusu anwani ya John
print(people_dict["John"]["address"]["city"])
# New York
* Kuhifadhi mpangilio wa data:

# Dictionary ya kuhifadhi mpangilio wa data
fruits_dict = {
"1": "apple",
"2": "banana",
"3": "orange"
}

# Pata thamani ya ufunguo "2"
print(fruits_dict["2"])
# banana

# Onyesha dictionary
print(fruits_dict)
# {'1': 'apple', '2': 'banana', '3': 'orange'}
* Kuandaa hesabu:

# Dictionary ya kuandaa hesabu
scores_dict = {
"Mojo": 90,
"John": 85,
"Mary": 95
}

# Pata jumla ya alama
total_scores = 0
for score in scores_dict.values():
total_scores += score

print(total_scores)
# 270

Читать полностью…

PYTHON EAST AFRICA

🤝 @Jighabha

Читать полностью…

PYTHON EAST AFRICA

Python - Set Methods

Читать полностью…
Subscribe to a channel