Začínáme s Pythonem
(aktualizováno 2024)
python.microbit.org
Send to micro:bit po spárování (⋮ Connect) nahrává kód rychle přímo do microbitu. Optimálně funguje v prohlížeči Chrome, na starší micro:bity je potřeba nahrát nový firmware.
Save stáhne kód ve formátu .hex podle naší volby buď přímo do micro:bitu nebo do vhodného adresáře odkud jej do micro:bitu zkopírujeme (přetáhneme). Takto můžeme mít program i zálohovaný.
Save ⋮ umožňuje stáhnout čistě python script, tedy malý textový soubor s kódem.
Po rozbalení levého panelu můžeme
- přímo myší tahat kódy ze sekce reference,
- inspirovat se z projektů v sekci ideas,
- najít podrobné informace k příkazům v sekci api,
- pracovat se soubory projektu v sekci project.
A dále nastavit jazyk (nebo pomoct s překladem do češtiny) a velikost písma, případně najít nápovědu.
Podrobný popis všech příkazů najdeme v Dokumentaci.
>>> Editor Mu a další v článku v čem programovat micro:bit včetně rozdílu mezi MakeCode Pythonem a MicroPythonem
# stejně tak zakomentujeme nepotřebné řádky kódu
# rozlišuje velká a malá písmena a odsazení řádků
Popis vzorového programu
[1] # Imports go at the top
[2] from microbit import *
[3]
[2] from microbit import *
[3]
[4] # Code in a 'while True:' loop repeats forever
[5] while True:
[6] display.show(Image.HEART)
[7] sleep(1000)
[8] display.scroll('Hello')
[5] while True:
[6] display.show(Image.HEART)
[7] sleep(1000)
[8] display.scroll('Hello')
[1] do poznámky je vhodné napsat název a popis programu a uvést autora
[2] pro ovládání microbitů potřebujeme příkazy z modulu microbit
[3] prázdné řády slouží ke zpřehlednění kódu
[4] poznámky v kódu jsou nutné pro přehlednost a snadné úpravy
[5] nekonečný cyklus, provádí se stále dokola
do těla cyklu patří všechny stejně odsazené řádky, tedy [6], [7], [8]
[6] zobraz obrázek, vybereme pomocí našeptávače nebo v dokumentaci
[7] čekej 1000 milisekund = 1 sekundu
[8] roluj nápis na displeji
do těla cyklu patří všechny stejně odsazené řádky, tedy [6], [7], [8]
[6] zobraz obrázek, vybereme pomocí našeptávače nebo v dokumentaci
[7] čekej 1000 milisekund = 1 sekundu
[8] roluj nápis na displeji
1. První vlastní program
Při startu napiš "AHOJ" a
zobraz srdíčko.
Nekonečný cyklus v tomto případě není potřeba.
Nekonečný cyklus v tomto případě není potřeba.
from microbit import display, Image, sleep
display.scroll('AHOJ')
display.show(Image.HEART)
sleep(500)
display.clear()
Mohli bychom použít i import * a tím importovat všechny příkazy modulu microbit. Takto máme po kontrolou, které příkazy importujeme a víme tedy, kde se vzaly.
Velká písmena v názvu obrázku poukazují na to, že jde o pojmenovanou konstantu.
2. Vlastní obrázek
Nakresli vlastní obrázek. Jas diody udáváme jako číslo od 0 do 9.
from microbit import display, Image
lodicka = Image("00500:"
"05500:"
"00500:"
"99999:"
"09990")
display.show(lodicka)
Do proměnné přiřazujeme pomocí =.
V proměnné lodicka je objekt typu Image.
Můžeme využívat stručnější zápis do jednoho řádku:
lodicka = Image("00500:05500:00500:99999:09990")
3. Animace
Vytvoř několik různě pojmenovaných obrázků, všechny vlož do jednoho seznamu.
Animuj seznam obrázků. Obrázky nakresli tak, aby na sebe navazovaly a ztvárnily pohyb.
obr1 = Image(..... názvy obrázků zvol libovolně
obr2 = Image(..... libovolný počet obrázků
...
obrazky = [obr1, obr2, obr3, obr4]
display.show(obrazky, delay=200)
V proměnné obrazky je objekt typu list (seznam).
4. Náhodný výběr
Vytvoř seznam obrázků (například jako puntíky na kostce).
Opakuj dokola: náhodně vyber jeden obrázek a počkej půl sekundy.
Do seznamu můžeš přidat i pojmenované obrázky, například Image.HEART.
from microbit import display, Image, sleep
from random import choice
Pokud bychom použili import random, mohli bychom využívat všechny příkazy z modulu random (náhoda), vždy s uvedením tohoto modulu, například random.choice = náhodně vyber ze seznamu.
Pokud importujeme pomocí from, použitý modul nezapisujeme:
obr1 = Image(.....
obr2 = Image(.....
obrazky = [obr1, obr2, obr3, obr4]
while True:
vyber = choice(obrazky)
display.show(vyber)
sleep(500)
Poslední dva řádky můžeme spojit do jednoho:
display.show(random.choice(obrazky))
while True znamená opakuj, dokud platí "pravda" = stále dokola
Důležité je odsazení mezerami. Vše, co je stejně odsazené, patří do jednoho cyklu.
Pokračování:
>>> Kreslení s Pythonem na microbitu (cyklus FOR)
>>> Tlačítka s Pythonem
>>> Nápisy v Pythonu (posílání zpráv)
>>> Tlačítka s Pythonem
>>> Nápisy v Pythonu (posílání zpráv)
Materiály do hodin:
Kde se naučit víc:
>>> česká i slovenská učebnice programování v MicroPythonu
>>> slovenské Webináře MicroPython & BBC micro:bit