Ugrás a tartalomhoz

CPython

Ellenőrzött
A Wikipédiából, a szabad enciklopédiából
CPython

FejlesztőPython fejlesztők és a Python közösség az Python Software Foundation támogatásával
Legfrissebb stabil kiadás3.3.3/2013 november 12., 2.7.6/2013 november 10.
Programozási nyelvC
Operációs rendszerplatformfüggetlen
Platformplatformfüggetlen
KategóriaPython értelmező
LicencPython Software Foundation Licenc
A CPython weboldala

A CPython a python programozási nyelvnek alapértelmezett, leginkább használt implementációja, amelyet C nyelven írtak. A CPython mellett léteznek más magas minőségű Python megvalósítások is: Jython, amelyet Java nyelven írtak, PyPy, illetve az IronPython, melyet CLI-ben írtak. Ezeken kívül létezik még több kísérleti megvalósítás is.[1]

A CPython egy bájtkód értelmező. Létezik hozzá külső függvény interfész számos nyelven, beleértve a C-t is, melyben explicit módon írhatunk kötéseket (angolul bindings) Python-tól különböző nyelven.

Támogatott platformok[2]

[szerkesztés]

Unix-szerű rendszerek

Speciális rendszerek

Egyéb rendszerek

Régebben támogatott platformok

[szerkesztés]

A PEP 11 lista azon platformokról, amelyek nem támogatják a CPythont (zárójelben a verzió, amelytől kezdve nem támogatott). Ezek közül néhány platformon továbbra is lehetséges a Pythont használni portolással. Lásd alább:

Portolással elérhető rendszerek

[szerkesztés]

Ezek a rendszerek nem támogatottak a Python Software Foundation hivatalos CPython verziójában. Portolt Python verziók (lentebb) gyakran tartalmaznak további platform specifikus funkciókat, mint a grafika és hang API (PSP-nél) és SMS, valamint a kamera API S60-nál.

Egyidejűség kérdése

[szerkesztés]

A jelentős hátránya a CPython használatának a Globális Interpreter Zárolás (angol rövidítéssel GIL) jelenléte minden CPython értelmező folyamatban, amely gyakorlatilag letiltja egyidejű Python szálak futtatását egy folyamaton belül.[3] Az igazán párhuzamos a multitasking-hoz, külön CPython folyamatot kell futtatni, amelyek között a kommunikáció kivitelezése egy nehéz feladat, de a multiprocess modul csökkenti ezt hátrányt, kissé. Sok vita zajlott arról, hogy eltávolítsák a GIL-t a CPythonból, még azután is, hogy elutasítottak egy Greg Stein által kiadott CPyton patchet, amely hatékonyan helyettesíti a GIL-t egy „finom szemcséjű” zárolásral.[4]

Verziótörténet

[szerkesztés]
Verzió Kiadás Támogatás
2.2 2001-12-21[5] 2003-05-30[6]
2.3 2003-07-29[7] 2008-03-11[8]
2.4 2004-11-30[9] 2008-12-19[10]
2.5 2006-09-19[11] 2011-05-26[12]
2.6 2008-10-01[13] 2013-10-29[14]
2.7 2010-07-03[15] 2015 (legalább)[16]
3.0 2008-12-03[17] 2009-06-27[18]
3.1 2009-06-27[19] 2014-06[20]
3.2 2011-02-20[21] 2016-02[22]
3.3 2012-09-29[23] 2017-09[24]
3.4 2014-02-23[25]
Régi verzió
Régebbi verzió, támogatott
Legújabb verzió
Jövőbeli kiadás

Jegyzetek

[szerkesztés]
  1. Martelli, Alex. Python in a Nutshell, 2. kiadás, O'Reilly, 5–7. o. (2006). ISBN 978-0-596-10046-9 
  2. PythonImplementations. (Hozzáférés: 2012. július 19.)
  3. Python/C API Reference Manual: Thread State and the Global Interpreter Lock. [2008. szeptember 14-i dátummal az eredetiből archiválva]. (Hozzáférés: 2009. május 30.)
  4. Library and Extension FAQ. Python v3.3.0 documentation. Python Software Foundation. [2013. március 4-i dátummal az eredetiből archiválva].
  5. https://www.python.org/download/releases/2.2/
  6. https://www.python.org/download/releases/2.2.3/
  7. https://www.python.org/download/releases/2.3/
  8. https://www.python.org/download/releases/2.3.7/
  9. https://www.python.org/download/releases/2.4/
  10. https://www.python.org/download/releases/2.4.6/
  11. https://www.python.org/download/releases/2.5/
  12. https://www.python.org/download/releases/2.5.6/
  13. https://www.python.org/download/releases/2.6/
  14. https://www.python.org/download/releases/2.6.9/
  15. https://www.python.org/download/releases/2.7/
  16. https://www.python.org/dev/peps/pep-0373/
  17. https://www.python.org/download/releases/3.0/
  18. https://www.python.org/download/releases/3.0.1/
  19. https://www.python.org/download/releases/3.1/
  20. https://www.python.org/dev/peps/pep-0375/
  21. https://www.python.org/download/releases/3.2/
  22. https://www.python.org/dev/peps/pep-0392/
  23. https://www.python.org/download/releases/3.3.0/
  24. https://www.python.org/dev/peps/pep-0398/
  25. https://www.python.org/dev/peps/pep-0429/

Fordítás

[szerkesztés]

Ez a szócikk részben vagy egészben a CPython című angol Wikipédia-szócikk ezen változatának fordításán alapul. Az eredeti cikk szerkesztőit annak laptörténete sorolja fel. Ez a jelzés csupán a megfogalmazás eredetét és a szerzői jogokat jelzi, nem szolgál a cikkben szereplő információk forrásmegjelöléseként.