Jaký je rozdíl mezi Pythonem a Cythonem?


Odpověď 1:

Python je programovací jazyk s několika implementacemi, z nichž nejoblíbenější je CPython (nezaměňovat s Cythonem!)

Cython je knihovna, která implementuje nadmnožinu jazyka Python a zkompiluje ji do rozšíření pro API API CPythonu. Umožňuje použití datových typů C v kódu, které se často transparentně kompilují do efektivního C. To umožňuje mnoho jednoduchých výher pro výkon v numerických výpočtech.

Pokud však děláte něco, co se líbí polím C, strukturám, ukazatelům, předběžnému přiřazení atd. ... je to komplikované a použití není zábavné. Mým obecným doporučením by bylo jednoduše napsat C a použít CFFI pro rychlá rozšíření, ale to znemožňuje integraci přímo do Pythonova C API, což je dobré pro vytváření příjemných rozhraní na rychlém kódu.

Kompilace nemodifikovaného Pythonu s Cythonem může v některých případech zvýšit výkon, ale podle mých zkušeností byl rozdíl minimální.