Python (lingua programmationis)
Python est fontium apertorum lingua programmationis multum hodie usitata (anno MMXVI tertia solum post C et Java [1]).
Brevitatem facilitatemque quaeret syntaxis, et programmata in Pythone saepe paucioribus in lineis scribi possunt quam aliis linguis, sicut C vel Java.
Programmandi paradigmata admittit varia, quarum imperativum et ad res directum. Multa instrumenta programmatoribus praebet, sicut dicta (inspiciendae tabulae), catalogui, lambda functiones, generatores classesque. Facile augetur lingua pernumerosis a bibliothecis programmaticis, etiam alias ad linguas adligantis.
Salve, munde!
[recensere | fontem recensere]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 fuit.
Python 2.0 die XVI mensis Octobris anno MM divulgata est; Python 3.0 autem mense Decembri anno MMVIII.
Nomen
[recensere | fontem recensere]Nominem Python lingua accipiet ex titulo pelliculae Monty Python's Flying Circus. Qua causa in programmatis nomina aliae ex huic pellicula scaenae saepe inveniuntur.
Pythone programmatores periti pythonistae appellatur, et pythonicus est modo peculiaris recte programmata scribendi secundum linguae usui.
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. |