Python (lugha ya programu)

Python ni lugha ya programu ya kiwango cha juu iliyotafsiriwa na inayojulikana kwa urahisi na usomaji wake. Iliundwa na Guido van Rossum mwaka 1991, inasaidia dhana mbalimbali za programu na ina maktaba kubwa ya viwango. Inatumiwa sana katika ukuzaji wa wavuti, sayansi ya data, na usanifu, huku urahisi wake wa kujifunza ukiifanya kuwa maarufu katika taaluma na sekta mbalimbali.

Python ni lugha ya aina mbadala na inafanya ukusanyaji wa takataka. Inasaidia mifano mingi ya programu, ikiwa ni pamoja na ile ya muundo (haswa utaratibu), inayolenga vitu, na inayofanya kazi. Mara nyingi huitwa lugha yenye "betri zilizojumuishwa" kutokana na maktaba yake kamili ya kiwango cha juu.

 Historia 
Historia ya lugha ya programu ya Python ilianza mwishoni mwa miaka ya 1980 wakati mtayarishaji wa programu wa Kiholanzi, Guido van Rossum, alipoanza kuifanyia kazi kama mradi wa kujifurahisha wakati wa likizo za Krismasi. Alihamasishwa na lugha ya programu ya ABC, ambayo aliwahi kuifanyia kazi katika taasisi ya Centrum Wiskunde & Informatica (CWI) nchini Uholanzi. Lengo lake lilikuwa kuunda lugha yenye nguvu lakini rahisi kusoma, yenye sintaksia safi na rahisi. Van Rossum alitoa toleo la kwanza rasmi, Python 0.9.0, mnamo Februari 1991. Toleo hili la awali lilijumuisha vipengele muhimu kama usimamizi wa makosa (exception handling), kazi (functions), na aina kuu za data zilizoweka msingi wa muundo wa Python.

Katika miaka ya 1990 na mwanzoni mwa miaka ya 2000, Python ilianza kupata umaarufu hatua kwa hatua katika jamii ya wapangaji kwa sababu ya urahisi na kubadilika kwake. Python 2.0 ilitolewa mnamo Oktoba 2000 na ilianzisha vipengele muhimu kama "list comprehensions" na mfumo wa ukusanyaji taka (garbage collection) unaotegemea kuhesabu marejeo. Maendeleo ya Python 3 yalianza kama mabadiliko makubwa ya kuboresha kasoro zilizokuwepo, na toleo rasmi lilitolewa mnamo Desemba 2008. Ingawa mwanzoni ilikumbwa na upinzani kutokana na kutokubaliana na Python 2, Python 3 imekuwa toleo kuu linalotumika kwa sasa, likiwa na msaada mkubwa kutoka kwa maktaba na miundombinu mbalimbali. Maendeleo ya lugha hii yameendelea chini ya usimamizi wa Python Software Foundation, kwa msaada wa jamii ya kimataifa ya watengenezaji.

 Muhtasari
 Falsafa 
Namna ya Python ni namna ya utaratibu na inaozingatiwa kuhusu kipengee kinyume cha lugha za programu nyingi.

 Sintaksia 
Sintaksia ya Python ni rahisi sana kinyume cha lugha za programu nyingine kama Java, C sharp au C++. Python Ilivutwa na sintaksia ya Ada, lugha ya programu nyingine.

 Mifano 
1 : Programu kwa kuchapa "Jambo ulimwengu !".print('Jambo ulimwengu !')
2 Programu kwa kuhesabu factoria ya namba moja.n = int(input('Andika nambari moja, kisha factoria yake itachapwa : '))

if n < 0:
    raise ValueError('Lazima andika nambari hasi')

fact = 1
i = 2
while i <= n:
    fact = fact * i
    i += 1

print(fact)
3 Programu hii inahusisha kuunda orodha ya wanafunzi na kuhesabu jumla ya alama zao. Inatumia OOP (Object-Oriented Programming) kuunda darasa la Mwanafunzi, ambalo lina sifa tatu: jina, umri, na alama za mtihani. Kila mwanafunzi ameundwa kama mfano wa darasa hili. Programu inahesabu jumla ya alama za wanafunzi wote kwa kutumia list comprehension. Kisha, taarifa za kila mwanafunzi zinachapishwa kwa kutumia metodu ya taarifa() ndani ya darasa la Mwanafunzi, na mwishowe, jumla ya alama inachapishwa. Huu ni mfano wa kutumia Python kutunza na kuchakata
# Programu hii inahusisha uundaji wa orodha ya wanafunzi na kuhesabu jumla ya alama za wanafunzi
class Mwanafunzi:
    def __init__(self, jina, umri, alama):
        self.jina = jina
        self.umri = umri
        self.alama = alama

    def taarifa(self):
        return f"Mwanafunzi: {self.jina}, Umri: {self.umri}, Alama: {self.alama}"

# Orodha ya wanafunzi
wanafunzi = [
    Mwanafunzi("Ahmed", 30, 85),
    Mwanafunzi("Fatma", 25, 92),
    Mwanafunzi("Juma", 40, 76)
]

# Hesabu jumla ya alama za wanafunzi wote
jumla_alama = sum([mwanafunzi.alama for mwanafunzi in wanafunzi])

# Chapisha taarifa za wanafunzi
for mwanafunzi in wanafunzi:
    print(mwanafunzi.taarifa())

# Chapisha jumla ya alama
print(f"Jumla ya alama za wanafunzi wote ni: {jumla_alama}")

 Marejeo 
 Downey, Allen B. (May 2012). Think Python: How to Think Like a Computer Scientist (Version 1.6.6 ed.). ISBN 978-0-521-72596-5.
 Hamilton, Naomi (5 August 2008). "The A-Z of Programming Languages: Python". Computerworld. Archived from the original on 29 December 2008. Retrieved 31 March 2010.
 Lutz, Mark (2013). Learning Python (5th ed.). O'Reilly Media. ISBN 978-0-596-15806-4.
 Pilgrim, Mark (2004). Dive Into Python. Apress. ISBN 978-1-59059-356-1.
 Pilgrim, Mark (2009). Dive Into Python 3. Apress. ISBN 978-1-4302-2415-0.
 Summerfield, Mark (2009). Programming in Python 3 (2nd ed.). Addison-Wesley Professional. ISBN 978-0-321-68056-3.

Jamii:Kompyuta
Jamii:Lugha za programu
Jamii:Teknolojia