Python (lingua programmandi)
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!
recensereInfra ostenditur programma minimum, quod "Salve, munde!" in monitorium mittit.
print("Salve, munde!")
Historia
recenserePython 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
recensereNomen Python derivatum est a titulo pelliculae Monty Python's Flying Circus. Qua propter in programmatis nomina alia e hac pellicula adhibta saepe invenitur.
Syntaxis
recenserePython 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
recensereAbssimiliter 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
recensereprint
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
recenserePython 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
recensereGenus | Descriptio | Exemplum |
---|---|---|
str
|
series immutabilis characterum | 'Vicipaedia' "Vicipaedia" """Spanning
|
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
recensereVicimedia Communia plura habent quae ad Python (lingua programmandi) spectant. |