Python (lingua programmationis)
Python est hodiernum idioma programmationis quod anno MMXVI in tertio loco manet inter linguas ad programmandum maxime adhibitas [1], post C et Java. Syntaxis consilio pondus dat brevitati et facilitati lectu, ut programmata in lineis scribantur paucioribus quam linguae aliae sicut C vel Java.
Lingua nomen accepit e titulo Monty Python's Flying Circus. Programmatores huius linguae periti pythonistae appellantur, et peculiaris modus quo ei programmata scribunt pythonicus nominatur.
Haec lingua multa paradigmata permittit, sicut imperativum et programmationem obiecto spectantem. Consilio in se multa instrumenta offert programmatoribus, sicut dicta (tabulae quaestionum), catalogi, functiones lambdae, generatores, et classes. Lingua facile extendi potest multis librariis programmationis, cum nexibus ad librarias aliarum linguarum, sicut Fortran, Java, et C.
Salve, munde!
[recensere | fontem recensere]Infra programma minimum ostenditur, quod "Salve, munde!" ad monitorium mittit.
print("Salve, munde!")
Historia
[recensere | fontem recensere]Python circum annum MCMLXXX primum concepta est, sed ab Guido van Rossum anno MCMLXXXIX demum creata est. Van Rossum, cum esset auctor princeps Pythonis, postea Benevolens Dictator Perpetuo (Anglice: Benevolent Dictator for Life) appellatus est.
Python 2.0 die XVI mensis Octobris anno MM divulgata est; Python 3.0 autem mense Decembri anno MMVIII.
Nomen
[recensere | fontem recensere]Nomen Python derivatum est a titulo pelliculae Monty Python's Flying Circus. Qua causa in programmatis nomina alia e hac pelliculae scaena saepe inveniuntur.
Syntaxis
[recensere | fontem recensere]Python indentationibus, non ceruliis, utitur ut clausulas varias distinguat. Exempli gratia:
def fib(n):
if n < 2:
return n
else:
return fib(n - 1) + fib(n - 2)
Declarationes
[recensere | fontem recensere]Absque modo linguae C, non necesse est genus variabilis scribere.
num = 1
num2 = num * 3 + 456
nomen = "Python"
conditio = False
series = [1, 5, 12, 123]
series_immutabilis = (123, 345, 'salve!')
Sententiae
[recensere | fontem recensere]printest sententia quae textum ad 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!"
foraliquoties iteratur.
for i in range(10):
print i
while(Latine dum) iteratur dum conditio vera est.
num = 2
while num < 10:
num += 1
print num
try(Latine conor) conatur partem try exsequi. Si error accidit, partem except exsequitur. Denique, partem finally semper exsequitur, si adest.
try:
num = 10 / 0 # malum!
except ZeroDivisionError:
print "illud facere non potes!"
finally:
print "conficio!"
classrem novam definit.
class Canis:
def __init__(self, nomen):
self.nomen = nomen
def latra(self):
print "Woof!"
def dic_nomen(self): # si canes loqui 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
passest sententia quae nihil facit.
def nihil_facio():
pass
assert(Latine affirmo)
num = 9 / 3
assert num == 3 # rectum
assert num == 4 # hic AssertionError provenit
yield(Latine cedo)
def crea_generatorem():
mealist = range(4)
for i in mealist:
yield i * i
gen = crea_generatorem()
for i in gen:
print i
# eventus:
# 0
# 1
# 4
# 9
exec(Latine fungor) seriem characterum codicis Pythonis exsequitur.
code = "print 'salve, munde!'"
exec code # "salve, munde!" ad monitorium mittit
evalexpressionem aestimat.
num = eval(3 * 5)
print num # 15
Operatores
[recensere | fontem recensere]Python nonnullos operatores habet:
- Operatores arithmetici simplices:
+(additio),-(subtractio),*(multiplicatio),/(Python 2: divisio integra; Python 3: divisio decimalis), et**(potentiatio) - Operatores compositi:
+=,-=,*=,/=,**= - Operatores comparativus:
<,>,<=,>=,(aequalitas valoris, non loci memoriae sicut in lingua C), et==!= - Operatores booliani: ,
and,ornot - Operatores bitwise: (et),
&(vel),|(aut exclusivum)^ - Operator loci memoriae:
is - Operator ternarius:
pars-veraifconditioelsepars-falsa
Genera
[recensere | fontem recensere]| Genus | Descriptio | Exemplum |
|---|---|---|
str |
series immutabilis characterum | 'Vicipaedia'"Vicipaedia""""Spanning |
byte |
series immutabilis bytorum | b'Some ASCII'b"Some ASCII" |
list |
series mutabilis quae genera varia continere potest | [4.0, 'string', True] |
tuple |
series immutabilis quae genera varia continere potest | (4.0, 'string', True) |
set, frozenset |
inordinata collectio, nulla duplicata continens | {4.0, 'string', True}frozenset([4.0, 'string', True]) |
dict |
collectio mutabilis clavis et valoris | {'key1': 1.0, 3: False} |
int |
numerus immutabilis (integer) infinitae magnitudinis | 42 |
float |
numerus immutabilis (decimalis) | 3.141592654 |
complex |
numerus immutabilis (complexus) cum partibus realibus et imaginariis | 3+2.7j |
bool |
valor immutabilis veritatis (verus aut falsus) | TrueFalse |
Implementationes
[recensere | fontem recensere]- CPython
- Unladen Swallow
- Jython (Java)
- IronPython (.NET)
- Stackless Python
- ChinesePython
Compilatores
[recensere | fontem recensere]- Psyco (ad codicem machinae)
- Pyjamas (ad JavaScript)
- Shed Skin (ad C++)
- Pyrex (ad C)
- Cython (ad C)
Nexus interni
Nexus externi
[recensere | fontem recensere]| Vicimedia Communia plura habent quae ad Python (lingua programmationis) spectant. |