-2 Latinitas huius rei dubia est. Corrige si potes. Vide {{latinitas}}.

Vide etiam paginam discretivam: Python (discretiva)

Python est hodierna lingua programmandi quae anno 2016 manet in tertio loco inter linguas ad programmandum maxime adhibitas [1], post C et Java. Syntaxis consilio pondus dat brevitati et facilitati legendo, ut programmata in lineis scribi possunt paucioribus, quam linguis aliis sicut C vel Java.

Lingua nomen accepit a titulo Monty Python's Flying Circus. Programmatores huius linguae periti pythonistae appellantur et peculiaris modus quo ei programmata scribunt appellatur pythonicus.

Haec lingua mutiplex paradigmata sinet sicut imperativum et obiecto spectans. Consilio in se multa specimina instrumenta quam progressiva offert programmatoribus sicut dictionaria (hash tabula), inventaria, functiones lambda, generatores, et classes. Et lingua facile extendi potest permultis librariis programmationis, cum alligationibus ad libraria aliarum linguarum sicut Fortran, Java, et C.

Salve, munde! recensere

Infra ostenditur programma minimum, quod "Salve, munde!" in monitorium mittit.

print("Salve, munde!")

Historia recensere

Python circa annum 1980 primum concepta est, sed solum anno 1989 a Guido van Rossum creata est. Van Rossum, cum auctor princeps Pythonis fuit, postea "Benevolens Dictator Perpetuo" (Anglice "Benevolent Dictator for Life") dictus est.

Python 2.0 die 16 Octobris 2000 divulgatur, Python 3.0 autem December 2008.

Nomen recensere

Nomen Python derivatum est a titulo pelliculae Monty Python's Flying Circus. Qua propter in programmatis nomina alia e hac pellicula adhibta saepe invenitur.

Syntaxis recensere

Python indentationes, non ceruchos, adhibet ut codices varios separet. Exempli gratia:

def fib(n):
    if n < 2:
        return n
    else:
        return fib(n - 1) + fib(n - 2)

Declarationes recensere

Abssimiliter linguae C, non necesse est genus scribere.

num = 1
num2 = num * 3 + 456
nomen = "Python"
conditio = False
series = [1, 5, 12, 123]
series_immutabilis = (123, 345, 'salve!')

Assertiones / Sententiae recensere

  • print est dictum quod textum in monitorium mittit.
print "Salve!"
  • if (Latine "si")
if num > 5:
    print "num est maior quam quinque!"
elif num < 5:
    print "num est minor quam quinque!"
else:
    print "num aequat quinque!"
  • for aliquotiens currit.
for i in range(10):
    print i
  • while (Latin "dum") currit dum conditio vera est.
num = 2
while num < 10:
    num += 1
    print num
  • try (Latine "conor") conatur fungi "conor" partem. si non secunde functus est, "praeter" partem fungitur. tandem, "tandem" partem semper fungitur, si "tandem" pars adest.
try:
    num = 10 / 0 # malus!
except ZeroDivisionError:
    print "illum non potes!"
finally:
    print "conficio!"
  • class rem novam creat.
class Canis:
    def __init__(self, nomen):
        self.nomen = nomen

    def latra(self):
        print "Woof!"

    def dic_nomen(self):  # si canes dicere possint
        print "mihi nomen est", self.nomen
  • def (Latine "definio") functionem definit.
def add(num1, num2):
    return num1 + num2
  • with (Latine "cum")
with open("data.txt") as fin:
    data = fin.read()
    # process data
  • pass est dictum quod nihil facit.
def nihil_facio():
    pass
  • assert (Latine "affirmo")
num = 9 / 3
assert num == 3 # bonus
assert num == 4 # hic tollit <code>AssertionError</code>
  • yield (Latine "cedo")
def crea_generatorem():
    mylist = range(4)

    for i in mylist:
        yield i * i

gen = crea_generatorem()
for i in gen:
    print i
# exitus:
# 0
# 1
# 4
# 9
  • exec (Latine "fungor") fungitur series characterum codicis Pythonis.
code = "print 'salve, munde!'"
exec code   # "salve, munde!" in quadrum visificum mittit
  • eval
num = eval(3 * 5)
print num   # 15

Operatores recensere

Python habet nonnullos operatores:

  • Operatores arithmetici simplices: + (additio), - (subtractio), * (multiplicatio), / (Python 2: integer divisio, Python 3: decimus divisio), et ** (exponentio)
  • Operatores complexi: +=, -=, *=, /=, **=
  • Operatores comparabilis: <, >, <=, >=, == (aequalitas pretii, non loci memoriae sicut lingua C), et !=
  • Operatores booleani: and, or, not
  • Operatores bitwise: & (et), | (vel), ^ (aut)
  • Operator loci memoriae: is
  • Operator ternarius: pars-vera if conditio else pars-falsa

Genera recensere

Genus Descriptio Exemplum
str series immutabilis characterum 'Vicipaedia'
"Vicipaedia"
"""Spanning
multiple
lines""
byte series immutabilis bytum b'Some ASCII'
b"Some ASCII"
list series mutabilis quae genera varia habere potest [4.0, 'string', True]
tuple series immutabilis quae genera varia habere potest (4.0, 'string', True)
set, frozenset inordinatus, nulla duplicata habet {4.0, 'string', True}
frozenset([4.0, 'string', True])
dict collectio mutabilis parum clavum et pretiorum {'key1': 1.0, 3: False}
int numerus immutabilis (integer) infinitae quantitatis 42
float numerus immutabilis (decimus) 3.141592654
complex numerus immutabilis (intricatus) cum partis realiis et imaginariis 3+2.7j
bool pretium immutabilis veritatis (verus aut falsus) True
False

Implementationes recensere

  • CPython
  • Unladen Swallow
  • Jython (Java)
  • IronPython (.NET)
  • Stackless Python
  • ChinesePython

Compilatra recensere

  • Psyco (ad codex machinae)
  • Pyjamas (ad JavaScript)
  • Shed Skin (ad C++)
  • Pyrex (ad C)
  • Cython (ad C)

Nexus interni

Nexus externi recensere

  Vicimedia Communia plura habent quae ad Python (lingua programmandi) spectant.