{"id":4076,"date":"2023-07-18T09:18:54","date_gmt":"2023-07-18T09:18:54","guid":{"rendered":"https:\/\/picockpit.com\/raspberry-pi\/?p=4076"},"modified":"2023-07-26T14:44:58","modified_gmt":"2023-07-26T14:44:58","slug":"whats-the-difference-between-micropython-circuitpython-cpython-anyway","status":"publish","type":"post","link":"https:\/\/picockpit.com\/raspberry-pi\/pl\/jaka-jest-roznica-miedzy-mikropyton-circuitpython-cpython-anyway\/","title":{"rendered":"Jaka jest r\u00f3\u017cnica mi\u0119dzy CPython, MicroPython i CircuitPython?"},"content":{"rendered":"<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Micro-Circuit-CPython1-1024x576.png\" alt=\"\" class=\"wp-image-4331\" srcset=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Micro-Circuit-CPython1-1024x576.png 1024w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Micro-Circuit-CPython1-300x169.png 300w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Micro-Circuit-CPython1-768x432.png 768w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Micro-Circuit-CPython1-18x10.png 18w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Micro-Circuit-CPython1.png 1200w\" sizes=\"auto, (max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>CPython, MicroPython i CircuitPython zajmuj\u0105 drogie miejsce w sercach wielu majsterkowicz\u00f3w. Ale nie zawsze jest jasne, jakie s\u0105 mi\u0119dzy nimi r\u00f3\u017cnice. A je\u015bli majstrujesz przy mikrokontrolerach po raz pierwszy, te rozr\u00f3\u017cnienia mog\u0105 odegra\u0107 kluczow\u0105 rol\u0119 w zrozumieniu, co dzieje si\u0119 z twoim kodem.<\/p>\n\n\n\n<p>W tym artykule wyja\u015bni\u0119 wi\u0119c, czym s\u0105 te trzy implementacje Pythona i jak je ze sob\u0105 por\u00f3wna\u0107.<\/p>\n\n\n\n<p>Wa\u017cne jest, aby pami\u0119ta\u0107, \u017ce Python jest zar\u00f3wno j\u0119zykiem <em>oraz<\/em> program. W tym kontek\u015bcie implementacja jest programem, kt\u00f3ry interpretuje i wykonuje kod Pythona.<\/p>\n\n\n\n<p>M\u00f3wimy wi\u0119c g\u0142\u00f3wnie o trzech programach (kt\u00f3re obejmuj\u0105 \u015brodowiska uruchomieniowe, standardowe biblioteki i inne narz\u0119dzia), kt\u00f3re mog\u0105 uruchamia\u0107 kod Pythona. Zacznijmy wi\u0119c od programu referencyjnego - CPython.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">CPython<\/h1>\n\n\n\n<p>CPython jest domy\u015bln\u0105 i najcz\u0119\u015bciej u\u017cywan\u0105 implementacj\u0105 j\u0119zyka programowania Python. Zazwyczaj, gdy ludzie m\u00f3wi\u0105 o Pythonie, m\u00f3wi\u0105 o Pythonie dzia\u0142aj\u0105cym na CPythonie.<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-large is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/pexels-realtoughcandycom-11035474-1024x683.jpg\" alt=\"\" class=\"wp-image-4233\" width=\"577\" height=\"384\" srcset=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/pexels-realtoughcandycom-11035474-1024x683.jpg 1024w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/pexels-realtoughcandycom-11035474-300x200.jpg 300w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/pexels-realtoughcandycom-11035474-768x512.jpg 768w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/pexels-realtoughcandycom-11035474-1536x1024.jpg 1536w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/pexels-realtoughcandycom-11035474-2048x1365.jpg 2048w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/pexels-realtoughcandycom-11035474-18x12.jpg 18w\" sizes=\"auto, (max-width: 577px) 100vw, 577px\" \/><\/figure>\n<\/div>\n\n\n<p>Nic dziwnego, \u017ce jest napisany w j\u0119zyku C (st\u0105d \"C\") i s\u0142u\u017cy jako referencyjna implementacja dla j\u0119zyka Python. Je\u015bli chcesz pozna\u0107 wszystkie brudne szczeg\u00f3\u0142y, mo\u017cesz <a href=\"https:\/\/docs.python.org\/3\/c-api\/intro.html\">Sprawd\u017a dokumentacj\u0119 CPython tutaj<\/a>.<\/p>\n\n\n\n<p>CPython interpretuje i wykonuje kod Pythona oraz zapewnia podstawow\u0105 funkcjonalno\u015b\u0107 i funkcje Pythona. A poniewa\u017c jest najcz\u0119\u015bciej u\u017cywany, ma r\u00f3wnie\u017c dost\u0119p do najbardziej rozbudowanego ekosystemu bibliotek i pakiet\u00f3w, w tym bibliotek takich jak NumPy, Django, Flask, TensorFlow itp.<\/p>\n\n\n\n<p>CPython posiada r\u00f3wnie\u017c \u015brodowisko uruchomieniowe z dynamicznym zarz\u0105dzaniem pami\u0119ci\u0105 (w tym automatyczn\u0105 alokacj\u0105 pami\u0119ci poprzez liczenie referencji, a tak\u017ce zbieranie \u015bmieci).<\/p>\n\n\n\n<p>Je\u015bli chodzi o obs\u0142ug\u0119 b\u0142\u0119d\u00f3w, CPython oferuje mo\u017cliwo\u015b\u0107 zarz\u0105dzania b\u0142\u0119dami i wyj\u0105tkami za pomoc\u0105 blok\u00f3w try-except.<\/p>\n\n\n\n<p>Posiada r\u00f3wnie\u017c oczywi\u015bcie wbudowany modu\u0142 debuggera, <code data-no-translation=\"\">pdb<\/code>kt\u00f3ry obs\u0142uguje punkty przerwania i pojedyncze kroki. Mo\u017cesz da\u0107 mu szans\u0119, uruchamiaj\u0105c go:<\/p>\n\n\n\n<div class=\"wp-block-kevinbatdorf-code-block-pro\" data-code-block-pro-font-family=\"Code-Pro-JetBrains-Mono\" style=\"font-size:.875rem;font-family:Code-Pro-JetBrains-Mono,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;line-height:1.25rem\"><span style=\"display:block;padding:16px 0 0 16px;margin-bottom:-1px;width:100%;text-align:left;background-color:#2e3440ff\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"54\" height=\"14\" viewbox=\"0 0 54 14\"><g fill=\"none\" fill-rule=\"evenodd\" transform=\"translate(1 1)\"><circle cx=\"6\" cy=\"6\" r=\"6\" fill=\"#FF5F56\" stroke=\"#E0443E\" stroke-width=\".5\"><\/circle><circle cx=\"26\" cy=\"6\" r=\"6\" fill=\"#FFBD2E\" stroke=\"#DEA123\" stroke-width=\".5\"><\/circle><circle cx=\"46\" cy=\"6\" r=\"6\" fill=\"#27C93F\" stroke=\"#1AAB29\" stroke-width=\".5\"><\/circle><\/g><\/svg><\/span><span role=\"button\" tabindex=\"0\" data-code=\"import pdb; pdb.set_trace()\" style=\"color:#d8dee9ff;display:none\" aria-label=\"Kopia\" class=\"code-block-pro-copy-button\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" style=\"width:24px;height:24px\" fill=\"none\" viewbox=\"0 0 24 24\" stroke=\"currentColor\" stroke-width=\"2\"><path class=\"with-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2m-6 9l2 2 4-4\"><\/path><path class=\"without-check\" stroke-linecap=\"round\" stroke-linejoin=\"round\" d=\"M9 5H7a2 2 0 00-2 2v12a2 2 0 002 2h10a2 2 0 002-2V7a2 2 0 00-2-2h-2M9 5a2 2 0 002 2h2a2 2 0 002-2M9 5a2 2 0 012-2h2a2 2 0 012 2\"><\/path><\/svg><\/span><pre class=\"shiki nord\" style=\"background-color: #2e3440ff\" tabindex=\"0\"><code data-no-translation=\"\"><span class=\"line\"><span style=\"color: #81A1C1\">import<\/span><span style=\"color: #D8DEE9FF\"> <\/span><span style=\"color: #8FBCBB\">pdb<\/span><span style=\"color: #D8DEE9FF\">; <\/span><span style=\"color: #8FBCBB\">pdb<\/span><span style=\"color: #D8DEE9FF\">.<\/span><span style=\"color: #8FBCBB\">set_trace<\/span><span style=\"color: #D8DEE9FF\">()<\/span><\/span><\/code><\/pre><\/div>\n\n\n\n<p><\/p>\n\n\n\n<p>Wreszcie, CPython u\u017cywa Globalnej Blokady Interpretera (GIL), kt\u00f3ra pozwala tylko jednemu g\u0142\u00f3wnemu w\u0105tkowi na wykonywanie kodu bajtowego Pythona w ramach jednego procesu. Innymi s\u0142owy, CPython obs\u0142uguje programowanie asynchroniczne, ale nie r\u00f3wnoleg\u0142e. <em>Wi\u0119cej na temat programowania asynchronicznego i r\u00f3wnoleg\u0142ego w nadchodz\u0105cym po\u015bcie!<\/em><\/p>\n\n\n\n<p>Niekt\u00f3re inne implementacje nie u\u017cywaj\u0105 GIL, dzi\u0119ki czemu mog\u0105 oferowa\u0107 r\u00f3\u017cne podej\u015bcia do wsp\u00f3\u0142bie\u017cno\u015bci i r\u00f3wnoleg\u0142o\u015bci. <\/p>\n\n\n\n<p>Na przyk\u0142ad Jython dzia\u0142a na wirtualnej maszynie Javy. <\/p>\n\n\n\n<p>IronPython dzia\u0142a na platformie .NET. <\/p>\n\n\n\n<p>PyPy dzia\u0142a na Software Transactional Memory.<\/p>\n\n\n\n<p>CPython, MicroPython i CircuitPython dzia\u0142aj\u0105 jednak z zainstalowanym GIL.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">MicroPython<\/h1>\n\n\n\n<p>W przeciwie\u0144stwie do CPython, kt\u00f3ry jest przeznaczony do og\u00f3lnego u\u017cytku (komputery stacjonarne, serwery, systemy wbudowane itp.), MicroPython jest implementacj\u0105 Pythona specjalnie zoptymalizowan\u0105 pod k\u0105tem mikrokontroler\u00f3w (takich jak Pico!) i system\u00f3w wbudowanych.<\/p>\n\n\n\n<p>Warto tutaj wspomnie\u0107, \u017ce MicroPython jest czasami zapisywany jako uPython, ze wzgl\u0119du na greck\u0105 liter\u0119 \u03bc (\"mu\", jak w pierwszej literze \"mikr\u00f3s\").<\/p>\n\n\n\n<p>MicroPython nie wymaga tym samym systemu operacyjnego, mo\u017cna go efektywnie uruchamia\u0107 <em>jak <\/em>system operacyjny na mikrokontrolerze.<\/p>\n\n\n\n<p>Zazwyczaj, aby to zrobi\u0107, ludzie polegaj\u0105 na <a href=\"https:\/\/thonny.org\/\">Thonny IDE<\/a>kt\u00f3ry zawiera szereg niezwykle przydatnych narz\u0119dzi do pracy z MicroPythonem.<\/p>\n\n\n\n<p>Cho\u0107 nadal napisany w j\u0119zyku C, MicroPython ma na celu zapewnienie kompaktowego \u015brodowiska uruchomieniowego dla mniej wydajnych urz\u0105dze\u0144 - wi\u0119c u\u017cywa mniej pami\u0119ci i tak naprawd\u0119 zapewnia tylko okre\u015blone modu\u0142y i biblioteki dla system\u00f3w wbudowanych, takie jak <code data-no-translation=\"\">machine<\/code>, <code data-no-translation=\"\">utime<\/code>oraz <code data-no-translation=\"\">network<\/code>.<\/p>\n\n\n\n<p>Je\u015bli szukasz niesamowitych bibliotek MicroPython, mo\u017cesz sprawdzi\u0107 <a href=\"https:\/\/awesome-micropython.com\/\">Niesamowity MicroPython<\/a>.<\/p>\n\n\n\n<p>CPython u\u017cywa liczenia referencji jako g\u0142\u00f3wnego algorytmu od\u015bmiecania, ale <a href=\"https:\/\/docs.micropython.org\/en\/latest\/develop\/memorymgt.html\">MicroPython u\u017cywa Mark i Sweep jako g\u0142\u00f3wnego algorytmu od\u015bmiecania<\/a> do zarz\u0105dzania pami\u0119ci\u0105.<\/p>\n\n\n\n<p>Zosta\u0142 on stworzony przez Damiena George'a 10 lat temu, a je\u015bli chcesz pos\u0142ucha\u0107, jak o nim m\u00f3wi, mo\u017cesz sprawdzi\u0107 ten wyk\u0142ad:<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" hcb-fetch-image-from=\"https:\/\/www.youtube.com\/watch?v=WI-nTf5iM84\" title=\"Korzystanie z MicroPython na wolno\u015bci\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/WI-nTf5iM84?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p>MicroPython nie posiada wi\u0119c wszystkich funkcji standardowej biblioteki CPython.<\/p>\n\n\n\n<p>W przeciwie\u0144stwie do CPythona, MicroPython nie ma wbudowanej obs\u0142ugi funkcji <code data-no-translation=\"\">pdb<\/code> jako narz\u0119dzie do debugowania. Zamiast tego, je\u015bli u\u017cywasz MicroPython, b\u0119dziesz musia\u0142 polega\u0107 na innych technikach, takich jak instrukcje print.<\/p>\n\n\n\n<p>Je\u015bli jeste\u015b zainteresowany korzystaniem z zewn\u0119trznych debugger\u00f3w, mo\u017cesz sprawdzi\u0107 <a href=\"https:\/\/github.com\/bobveringa\/mpdb\">ten bardzo fajny debugger MicroPython na GitHubie<\/a>. Jego celem jest zapewnienie <code data-no-translation=\"\">pdb<\/code> do MicroPython.<\/p>\n\n\n\n<p>Je\u015bli chcesz zapozna\u0107 si\u0119 z dokumentacj\u0105 MicroPython, aby uzyska\u0107 bardziej szczeg\u00f3\u0142owe informacje, mo\u017cesz \u015bledzi\u0107 <a href=\"https:\/\/docs.micropython.org\/en\/latest\/index.html\">ten link, aby zobaczy\u0107 wszystkie szczeg\u00f3\u0142y<\/a>.<\/p>\n\n\n\n<p>MicroPython jest wi\u0119c bardziej ograniczon\u0105 implementacj\u0105 CPythona, ale wci\u0105\u017c jest cudownie pot\u0119\u017cny i cz\u0119sto jest idealnym narz\u0119dziem dla wielu projekt\u00f3w.<\/p>\n\n\n\n<h1 class=\"wp-block-heading\">CircuitPython<\/h1>\n\n\n\n<p>Innym \u015bwietnym narz\u0119dziem jest CircuitPython.<\/p>\n\n\n\n<p>CircuitPython jest rozwidleniem MicroPythona powi\u0105zanym z <a href=\"https:\/\/www.adafruit.com\/\">Adafruit<\/a> i ma na celu by\u0107 bardziej przyjazny dla pocz\u0105tkuj\u0105cych (to, czy MicroPython nie jest wystarczaj\u0105co przyjazny dla pocz\u0105tkuj\u0105cych, jest z pewno\u015bci\u0105 kwesti\u0105 do dyskusji).<\/p>\n\n\n\n<p>W rzeczywisto\u015bci r\u00f3\u017cnice mi\u0119dzy MicroPython i CircuitPython s\u0105 niezwykle ma\u0142e.<\/p>\n\n\n\n<p>Jedn\u0105 zauwa\u017caln\u0105 r\u00f3\u017cnic\u0105 jest to, \u017ce CircuitPython zosta\u0142 zaprojektowany tak, aby pliki by\u0142y przenoszone na p\u0142ytk\u0119, pojawiaj\u0105c si\u0119 jako dysk zewn\u0119trzny (tak jak USB). Chodzi o to, \u017ce nie trzeba przesy\u0142a\u0107 pliku przez Thonny (cho\u0107 nadal mo\u017cna).<\/p>\n\n\n<div class=\"wp-block-image\">\n<figure class=\"aligncenter size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" src=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Screenshot-from-2023-07-18-10-45-28.png\" alt=\"\" class=\"wp-image-4234\" width=\"591\" height=\"485\" srcset=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Screenshot-from-2023-07-18-10-45-28.png 797w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Screenshot-from-2023-07-18-10-45-28-300x246.png 300w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Screenshot-from-2023-07-18-10-45-28-768x630.png 768w, https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Screenshot-from-2023-07-18-10-45-28-15x12.png 15w\" sizes=\"auto, (max-width: 591px) 100vw, 591px\" \/><\/figure>\n<\/div>\n\n\n<p>Przyk\u0142adowo, CircuitPython posiada specyficzne biblioteki, takie jak <code data-no-translation=\"\">adafruit_neopixel<\/code>, <code data-no-translation=\"\">adafruit_bmp280<\/code>oraz <code data-no-translation=\"\">adafruit_dotstar<\/code>kt\u00f3re s\u0105 przeznaczone dla okre\u015blonego sprz\u0119tu.<\/p>\n\n\n\n<p>Co\u015b, co naprawd\u0119 wyr\u00f3\u017cnia CircuitPython, to t\u0119tni\u0105ca \u017cyciem spo\u0142eczno\u015b\u0107, kt\u00f3r\u0105 Adafruit stworzy\u0142 wok\u00f3\u0142 niego. Mo\u017cesz sprawdzi\u0107 CircuitPython <a href=\"https:\/\/forums.adafruit.com\/viewforum.php?f=60\">forum<\/a> i <a href=\"https:\/\/adafru.it\/discord\">niezgoda<\/a> aby przekona\u0107 si\u0119 samemu. (Powinienem zaznaczy\u0107, \u017ce MicroPython posiada r\u00f3wnie\u017c aplikacj\u0119 <a href=\"https:\/\/github.com\/orgs\/micropython\/discussions\">forum<\/a> oraz <a href=\"https:\/\/discord.com\/invite\/RB8HZSAExQ\">niezgoda<\/a>aczkolwiek znacznie rzadziej odwiedzana, poniewa\u017c wi\u0119kszo\u015b\u0107 dyskusji na temat MicroPythona toczy si\u0119 na <a href=\"https:\/\/github.com\/orgs\/micropython\/discussions\">GitHub<\/a>).<\/p>\n\n\n\n<p>Je\u015bli chcesz dowiedzie\u0107 si\u0119 wi\u0119cej o CircuitPython i jego r\u00f3\u017cnicach z MicroPython (i CPython), mo\u017cesz sprawdzi\u0107 <a href=\"https:\/\/docs.circuitpython.org\/en\/latest\/docs\/index.html#\">jego strona dokumentacji tutaj<\/a>. Nawet jego dokumentacja wygl\u0105da podobnie do dokumentacji MicroPythona!<\/p>\n\n\n\n<p>W przeciwnym razie mo\u017cesz obejrze\u0107 ten film opublikowany przez Adafruit:<\/p>\n\n\n\n<figure class=\"wp-block-embed is-type-video is-provider-youtube wp-block-embed-youtube wp-embed-aspect-16-9 wp-has-aspect-ratio\"><div class=\"wp-block-embed__wrapper\">\n<iframe loading=\"lazy\" hcb-fetch-image-from=\"https:\/\/www.youtube.com\/watch?v=rN7kvWuAt7k\" title=\"CircuitPython: Python na sprz\u0119cie (Dave Astels)\" width=\"500\" height=\"281\" src=\"https:\/\/www.youtube.com\/embed\/rN7kvWuAt7k?feature=oembed\" frameborder=\"0\" allow=\"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share\" referrerpolicy=\"strict-origin-when-cross-origin\" allowfullscreen><\/iframe>\n<\/div><\/figure>\n\n\n\n<p><\/p>\n\n\n\n<p>Je\u015bli znasz jakie\u015b inne interesuj\u0105ce r\u00f3\u017cnice, daj nam zna\u0107 w komentarzach poni\u017cej!<\/p>\n<div class=\"shariff shariff-align-center shariff-widget-align-left shariff-buttonstretch\"><ul class=\"shariff-buttons theme-white orientation-horizontal buttonsize-medium\"><li class=\"shariff-button twitter shariff-nocustomcolor\" style=\"background-color:#595959\"><a href=\"https:\/\/twitter.com\/share?url=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fpl%2Fjaka-jest-roznica-miedzy-mikropyton-circuitpython-cpython-anyway%2F&text=What%E2%80%99s%20the%20difference%20between%20CPython%2C%20MicroPython%2C%20%26%20CircuitPython%20anyway%3F\" title=\"Udost\u0119pnij na X\" aria-label=\"Udost\u0119pnij na X\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#000; color:#000\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#000\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 24 24\"><path fill=\"#000\" d=\"M14.258 10.152L23.176 0h-2.113l-7.747 8.813L7.133 0H0l9.352 13.328L0 23.973h2.113l8.176-9.309 6.531 9.309h7.133zm-2.895 3.293l-.949-1.328L2.875 1.56h3.246l6.086 8.523.945 1.328 7.91 11.078h-3.246zm0 0\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#000\">udost\u0119pnij<\/span>&nbsp;<\/a><\/li><li class=\"shariff-button facebook shariff-nocustomcolor\" style=\"background-color:#4273c8\"><a href=\"https:\/\/www.facebook.com\/sharer\/sharer.php?u=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fpl%2Fjaka-jest-roznica-miedzy-mikropyton-circuitpython-cpython-anyway%2F\" title=\"Udost\u0119pnij na Facebooku\" aria-label=\"Udost\u0119pnij na Facebooku\" role=\"button\" rel=\"nofollow\" class=\"shariff-link\" style=\"; background-color:#3b5998; color:#3b5998\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#3b5998\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 18 32\"><path fill=\"#3b5998\" d=\"M17.1 0.2v4.7h-2.8q-1.5 0-2.1 0.6t-0.5 1.9v3.4h5.2l-0.7 5.3h-4.5v13.6h-5.5v-13.6h-4.5v-5.3h4.5v-3.9q0-3.3 1.9-5.2t5-1.8q2.6 0 4.1 0.2z\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#3b5998\">udost\u0119pnij<\/span>&nbsp;<\/a><\/li><li class=\"shariff-button telegram shariff-nocustomcolor\" style=\"background-color:#4084A6\"><a href=\"https:\/\/telegram.me\/share\/url?url=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fpl%2Fjaka-jest-roznica-miedzy-mikropyton-circuitpython-cpython-anyway%2F&text=What%E2%80%99s%20the%20difference%20between%20CPython%2C%20MicroPython%2C%20%26%20CircuitPython%20anyway%3F\" title=\"Udost\u0119pnij przez Telegram\" aria-label=\"Udost\u0119pnij przez Telegram\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#0088cc; color:#0088cc\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#0088cc\"><svg width=\"32px\" height=\"20px\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 32 32\"><path fill=\"#0088cc\" d=\"M30.8 6.5l-4.5 21.4c-.3 1.5-1.2 1.9-2.5 1.2L16.9 24l-3.3 3.2c-.4.4-.7.7-1.4.7l.5-7L25.5 9.2c.6-.5-.1-.8-.9-.3l-15.8 10L2 16.7c-1.5-.5-1.5-1.5.3-2.2L28.9 4.3c1.3-.5 2.3.3 1.9 2.2z\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#0088cc\">udost\u0119pnij<\/span>&nbsp;<\/a><\/li><li class=\"shariff-button reddit shariff-nocustomcolor\" style=\"background-color:#ff5700\"><a href=\"https:\/\/www.reddit.com\/submit?url=https%3A%2F%2Fpicockpit.com%2Fraspberry-pi%2Fpl%2Fjaka-jest-roznica-miedzy-mikropyton-circuitpython-cpython-anyway%2F\" title=\"Udost\u0119pnij przez Reddit\" aria-label=\"Udost\u0119pnij przez Reddit\" role=\"button\" rel=\"noopener nofollow\" class=\"shariff-link\" style=\"; background-color:#ff4500; color:#ff4500\" target=\"_blank\"><span class=\"shariff-icon\" style=\"fill:#ff4500\"><svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" viewbox=\"0 0 512 512\"><path fill=\"#ff4500\" d=\"M440.3 203.5c-15 0-28.2 6.2-37.9 15.9-35.7-24.7-83.8-40.6-137.1-42.3L293 52.3l88.2 19.8c0 21.6 17.6 39.2 39.2 39.2 22 0 39.7-18.1 39.7-39.7s-17.6-39.7-39.7-39.7c-15.4 0-28.7 9.3-35.3 22l-97.4-21.6c-4.9-1.3-9.7 2.2-11 7.1L246.3 177c-52.9 2.2-100.5 18.1-136.3 42.8-9.7-10.1-23.4-16.3-38.4-16.3-55.6 0-73.8 74.6-22.9 100.1-1.8 7.9-2.6 16.3-2.6 24.7 0 83.8 94.4 151.7 210.3 151.7 116.4 0 210.8-67.9 210.8-151.7 0-8.4-.9-17.2-3.1-25.1 49.9-25.6 31.5-99.7-23.8-99.7zM129.4 308.9c0-22 17.6-39.7 39.7-39.7 21.6 0 39.2 17.6 39.2 39.7 0 21.6-17.6 39.2-39.2 39.2-22 .1-39.7-17.6-39.7-39.2zm214.3 93.5c-36.4 36.4-139.1 36.4-175.5 0-4-3.5-4-9.7 0-13.7 3.5-3.5 9.7-3.5 13.2 0 27.8 28.5 120 29 149 0 3.5-3.5 9.7-3.5 13.2 0 4.1 4 4.1 10.2.1 13.7zm-.8-54.2c-21.6 0-39.2-17.6-39.2-39.2 0-22 17.6-39.7 39.2-39.7 22 0 39.7 17.6 39.7 39.7-.1 21.5-17.7 39.2-39.7 39.2z\"\/><\/svg><\/span><span class=\"shariff-text\" style=\"color:#ff4500\">udost\u0119pnij<\/span>&nbsp;<\/a><\/li><\/ul><\/div>","protected":false},"excerpt":{"rendered":"<p>CPython, MicroPython i CircuitPython zajmuj\u0105 drogie miejsce w sercach wielu majsterkowicz\u00f3w. Ale nie zawsze jest jasne, jakie s\u0105 mi\u0119dzy nimi r\u00f3\u017cnice. A je\u015bli majstrujesz przy mikrokontrolerach po raz pierwszy, te rozr\u00f3\u017cnienia mog\u0105 odegra\u0107 kluczow\u0105 rol\u0119 w zrozumieniu tego, co dzieje si\u0119 z twoim kodem. Tak wi\u0119c, w tym artykule...<\/p>","protected":false},"author":2,"featured_media":4331,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1193],"tags":[1196,477,996,1200,1199,1198,1194,178,597,789,14,826,11,1195,476,187,456,1197],"class_list":["post-4076","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-python","tag-brython","tag-circuitpython","tag-cpython","tag-execution","tag-implementation","tag-ironpython","tag-jython","tag-memory","tag-microcontroller","tag-microcontrollers","tag-micropython","tag-optimization","tag-pico","tag-pypy","tag-python","tag-raspberry-pi","tag-raspberry-pi-projects","tag-stackless-python"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.6 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>What&#039;s the difference between CPython, MicroPython, &amp; CircuitPython anyway? | PiCockpit<\/title>\n<meta name=\"description\" content=\"In this post, we&#039;re looking at what distinguishes CPython from MicroPython and both of them from CircuitPython.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/picockpit.com\/raspberry-pi\/pl\/jaka-jest-roznica-miedzy-mikropyton-circuitpython-cpython-anyway\/\" \/>\n<meta property=\"og:locale\" content=\"pl_PL\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"What&#039;s the difference between CPython, MicroPython, &amp; CircuitPython anyway? | PiCockpit\" \/>\n<meta property=\"og:description\" content=\"In this post, we&#039;re looking at what distinguishes CPython from MicroPython and both of them from CircuitPython.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/picockpit.com\/raspberry-pi\/pl\/jaka-jest-roznica-miedzy-mikropyton-circuitpython-cpython-anyway\/\" \/>\n<meta property=\"og:site_name\" content=\"PiCockpit\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/pi3gshop\" \/>\n<meta property=\"article:published_time\" content=\"2023-07-18T09:18:54+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2023-07-26T14:44:58+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Micro-Circuit-CPython1.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"675\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"raspi berry\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@pi3g\" \/>\n<meta name=\"twitter:site\" content=\"@pi3g\" \/>\n<meta name=\"twitter:label1\" content=\"Napisane przez\" \/>\n\t<meta name=\"twitter:data1\" content=\"raspi berry\" \/>\n\t<meta name=\"twitter:label2\" content=\"Szacowany czas czytania\" \/>\n\t<meta name=\"twitter:data2\" content=\"5 minut\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/nl\\\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/nl\\\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\\\/\"},\"author\":{\"name\":\"raspi berry\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/person\\\/7af3a7a8c999bc722029ef9ca9d78eee\"},\"headline\":\"What&#8217;s the difference between CPython, MicroPython, &#038; CircuitPython anyway?\",\"datePublished\":\"2023-07-18T09:18:54+00:00\",\"dateModified\":\"2023-07-26T14:44:58+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/nl\\\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\\\/\"},\"wordCount\":965,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#organization\"},\"image\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/nl\\\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Micro-Circuit-CPython1.png\",\"keywords\":[\"brython\",\"circuitpython\",\"cpython\",\"execution\",\"implementation\",\"IronPython\",\"jython\",\"memory\",\"microcontroller\",\"microcontrollers\",\"microPython\",\"optimization\",\"Pico\",\"pypy\",\"python\",\"Raspberry Pi\",\"Raspberry Pi projects\",\"stackless python\"],\"articleSection\":[\"Python\"],\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/nl\\\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\\\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/nl\\\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\\\/\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/nl\\\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\\\/\",\"name\":\"What's the difference between CPython, MicroPython, & CircuitPython anyway? | PiCockpit\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/nl\\\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/nl\\\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Micro-Circuit-CPython1.png\",\"datePublished\":\"2023-07-18T09:18:54+00:00\",\"dateModified\":\"2023-07-26T14:44:58+00:00\",\"description\":\"In this post, we're looking at what distinguishes CPython from MicroPython and both of them from CircuitPython.\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/nl\\\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\\\/#breadcrumb\"},\"inLanguage\":\"pl-PL\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/nl\\\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/nl\\\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\\\/#primaryimage\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Micro-Circuit-CPython1.png\",\"contentUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Micro-Circuit-CPython1.png\",\"width\":1200,\"height\":675},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/nl\\\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Python\",\"item\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/category\\\/python\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"What&#8217;s the difference between CPython, MicroPython, &#038; CircuitPython anyway?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#website\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/\",\"name\":\"PiCockpit\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"pl-PL\"},{\"@type\":\"Organization\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#organization\",\"name\":\"PiCockpit.com\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/logo\\\/image\\\/\",\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Screenshot-from-2023-07-24-15-01-24.png\",\"contentUrl\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/wp-content\\\/uploads\\\/2023\\\/07\\\/Screenshot-from-2023-07-24-15-01-24.png\",\"width\":1165,\"height\":283,\"caption\":\"PiCockpit.com\"},\"image\":{\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/logo\\\/image\\\/\"},\"sameAs\":[\"https:\\\/\\\/www.facebook.com\\\/pi3gshop\",\"https:\\\/\\\/x.com\\\/pi3g\"]},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/#\\\/schema\\\/person\\\/7af3a7a8c999bc722029ef9ca9d78eee\",\"name\":\"raspi berry\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pl-PL\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g\",\"caption\":\"raspi berry\"},\"description\":\"I'm here to help you with all your Raspberry Pi related questions &amp; love to share about new project ideas for the Raspberry Pi, and give quick tips. Of course I'll also help you with PiCockpit and how to make your Raspberry Pi even easier to use with this raspberry pi monitoring solution :-)\",\"sameAs\":[\"https:\\\/\\\/picockpit.com\"],\"url\":\"https:\\\/\\\/picockpit.com\\\/raspberry-pi\\\/pl\\\/author\\\/raspi-berry\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Jaka jest r\u00f3\u017cnica mi\u0119dzy CPython, MicroPython i CircuitPython? | PiCockpit","description":"W tym po\u015bcie przyjrzymy si\u0119 temu, co odr\u00f3\u017cnia CPython od MicroPython i oba od CircuitPython.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/picockpit.com\/raspberry-pi\/pl\/jaka-jest-roznica-miedzy-mikropyton-circuitpython-cpython-anyway\/","og_locale":"pl_PL","og_type":"article","og_title":"What's the difference between CPython, MicroPython, & CircuitPython anyway? | PiCockpit","og_description":"In this post, we're looking at what distinguishes CPython from MicroPython and both of them from CircuitPython.","og_url":"https:\/\/picockpit.com\/raspberry-pi\/pl\/jaka-jest-roznica-miedzy-mikropyton-circuitpython-cpython-anyway\/","og_site_name":"PiCockpit","article_publisher":"https:\/\/www.facebook.com\/pi3gshop","article_published_time":"2023-07-18T09:18:54+00:00","article_modified_time":"2023-07-26T14:44:58+00:00","og_image":[{"width":1200,"height":675,"url":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Micro-Circuit-CPython1.png","type":"image\/png"}],"author":"raspi berry","twitter_card":"summary_large_image","twitter_creator":"@pi3g","twitter_site":"@pi3g","twitter_misc":{"Napisane przez":"raspi berry","Szacowany czas czytania":"5 minut"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/picockpit.com\/raspberry-pi\/nl\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\/#article","isPartOf":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/nl\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\/"},"author":{"name":"raspi berry","@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/person\/7af3a7a8c999bc722029ef9ca9d78eee"},"headline":"What&#8217;s the difference between CPython, MicroPython, &#038; CircuitPython anyway?","datePublished":"2023-07-18T09:18:54+00:00","dateModified":"2023-07-26T14:44:58+00:00","mainEntityOfPage":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/nl\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\/"},"wordCount":965,"commentCount":0,"publisher":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#organization"},"image":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/nl\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\/#primaryimage"},"thumbnailUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Micro-Circuit-CPython1.png","keywords":["brython","circuitpython","cpython","execution","implementation","IronPython","jython","memory","microcontroller","microcontrollers","microPython","optimization","Pico","pypy","python","Raspberry Pi","Raspberry Pi projects","stackless python"],"articleSection":["Python"],"inLanguage":"pl-PL","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/picockpit.com\/raspberry-pi\/nl\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/picockpit.com\/raspberry-pi\/nl\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\/","url":"https:\/\/picockpit.com\/raspberry-pi\/nl\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\/","name":"Jaka jest r\u00f3\u017cnica mi\u0119dzy CPython, MicroPython i CircuitPython? | PiCockpit","isPartOf":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#website"},"primaryImageOfPage":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/nl\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\/#primaryimage"},"image":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/nl\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\/#primaryimage"},"thumbnailUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Micro-Circuit-CPython1.png","datePublished":"2023-07-18T09:18:54+00:00","dateModified":"2023-07-26T14:44:58+00:00","description":"W tym po\u015bcie przyjrzymy si\u0119 temu, co odr\u00f3\u017cnia CPython od MicroPython i oba od CircuitPython.","breadcrumb":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/nl\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\/#breadcrumb"},"inLanguage":"pl-PL","potentialAction":[{"@type":"ReadAction","target":["https:\/\/picockpit.com\/raspberry-pi\/nl\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\/"]}]},{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/picockpit.com\/raspberry-pi\/nl\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\/#primaryimage","url":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Micro-Circuit-CPython1.png","contentUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Micro-Circuit-CPython1.png","width":1200,"height":675},{"@type":"BreadcrumbList","@id":"https:\/\/picockpit.com\/raspberry-pi\/nl\/wat-het-verschil-tussen-micropython-circuitpython-cpython-anyway\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/picockpit.com\/raspberry-pi\/"},{"@type":"ListItem","position":2,"name":"Python","item":"https:\/\/picockpit.com\/raspberry-pi\/category\/python\/"},{"@type":"ListItem","position":3,"name":"What&#8217;s the difference between CPython, MicroPython, &#038; CircuitPython anyway?"}]},{"@type":"WebSite","@id":"https:\/\/picockpit.com\/raspberry-pi\/#website","url":"https:\/\/picockpit.com\/raspberry-pi\/","name":"PiCockpit","description":"","publisher":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/picockpit.com\/raspberry-pi\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"pl-PL"},{"@type":"Organization","@id":"https:\/\/picockpit.com\/raspberry-pi\/#organization","name":"PiCockpit.com","url":"https:\/\/picockpit.com\/raspberry-pi\/","logo":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/logo\/image\/","url":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Screenshot-from-2023-07-24-15-01-24.png","contentUrl":"https:\/\/picockpit.com\/raspberry-pi\/wp-content\/uploads\/2023\/07\/Screenshot-from-2023-07-24-15-01-24.png","width":1165,"height":283,"caption":"PiCockpit.com"},"image":{"@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/pi3gshop","https:\/\/x.com\/pi3g"]},{"@type":"Person","@id":"https:\/\/picockpit.com\/raspberry-pi\/#\/schema\/person\/7af3a7a8c999bc722029ef9ca9d78eee","name":"jagoda malina","image":{"@type":"ImageObject","inLanguage":"pl-PL","@id":"https:\/\/secure.gravatar.com\/avatar\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c10c423ceeff34163dd54a5472d6da17d71c0e360e0cf8cdb8847006372f216b?s=96&d=blank&r=g","caption":"raspi berry"},"description":"Jestem tutaj, aby pom\u00f3c Ci we wszystkich pytaniach zwi\u0105zanych z Raspberry Pi i uwielbiam dzieli\u0107 si\u0119 nowymi pomys\u0142ami na projekty dla Raspberry Pi, a tak\u017ce udziela\u0107 szybkich wskaz\u00f3wek. Oczywi\u015bcie pomog\u0119 Ci r\u00f3wnie\u017c z PiCockpit i jak sprawi\u0107, aby Twoje Raspberry Pi jeszcze \u0142atwiejsze w u\u017cyciu z tym rozwi\u0105zaniem monitorowania Maliny Pi :-)","sameAs":["https:\/\/picockpit.com"],"url":"https:\/\/picockpit.com\/raspberry-pi\/pl\/author\/raspi-berry\/"}]}},"_links":{"self":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/pl\/wp-json\/wp\/v2\/posts\/4076","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/pl\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/pl\/wp-json\/wp\/v2\/comments?post=4076"}],"version-history":[{"count":24,"href":"https:\/\/picockpit.com\/raspberry-pi\/pl\/wp-json\/wp\/v2\/posts\/4076\/revisions"}],"predecessor-version":[{"id":4332,"href":"https:\/\/picockpit.com\/raspberry-pi\/pl\/wp-json\/wp\/v2\/posts\/4076\/revisions\/4332"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/pl\/wp-json\/wp\/v2\/media\/4331"}],"wp:attachment":[{"href":"https:\/\/picockpit.com\/raspberry-pi\/pl\/wp-json\/wp\/v2\/media?parent=4076"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/pl\/wp-json\/wp\/v2\/categories?post=4076"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/picockpit.com\/raspberry-pi\/pl\/wp-json\/wp\/v2\/tags?post=4076"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}