マイクロビット(m_12)モジュール antigravity array audio builtins collections
module – antigravity array audio builtins collections
thonny-microbitには「antigravity、array、audio、builtins、collections|ucollections、gc、love、machine、math、microbit、micropython、music、neopixel、os、radio、random、speech、sys、struct|ustruct、time|utime、this」のモジュールがあります。※microbitモジュールは既に記載しました。
順次、わかる範囲で記載していこうと思います。builtinsやmathモジュールなどはPythonのドキュメントを参照した方が良いものがあります。その場合は、関数のみ記載します。
(d-01)antigravity -module
以下の絵文字が表示されました。特に何かに使うことは無さそうです。
>>> import antigravity
+-xkcd.com/353---------------------------------------------------+
| |
| \0/ |
| / \ |
| You're flying! MicroPython! /| |
| How? \ \ |
| / |
| 0 |
| /|\ |
| | |
|-----____/_\______________________________----------------------|
| |
+----------------------------------------------------------------+
(d-02)array -module
arrayモジュールを読み込むとarray関数が使えます。※詳細はPythonのドキュメントサイトを参照してください。
import array
ary = array.array('i',[1, 10, 100])
for i in ary:
print(i)
実行結果
>>> %Run 1004_module_01.py
1
10
100
– micro:bit V2 –
モジュール名がuarrayに変わっています。
>>> import array
>>> help(array)
object <module 'uarray'> is of type module
__name__ -- uarray
array --
(d-03)audio -module
import audio すると、stop、play、is_playing、AudioFrameが使えます。
(03-01)audio.play
audio.play(source, wait=True, pin=pin0, return_pin=None)
この場合、pin0とGNDにスピーカ接続して使うそうです。音源のAudioFrameの作成が難しいです。そのため私のような素人では難しいので省略します。
audioを簡単に使うにはmicro:bitのV2の方が良いと思います。スピーカも付いているし、組込みされた音源もあります。V2なら組込み音源’HAPPY’を使う場合はaudio.play(Sound.HAPPY)で良いそうです。
– micro:bit V2 –
microbitモジュールにも追加されています。(microbit.audio)
>>> from microbit import audio, Sound
>>> audio.play(Sound.HAPPY)
>>>
(d-04)builtins
以下の関数、組込み例外などあります。※各関数などはPythonのドキュメントサイトなどを参照してください。
abs、all、any、bin、bool、bytearray、bytes、callable、chr、classmethod、dict、dir、divmod、enumerate、eval、exec、filter、float、frozenset、getattr、globals、hasattr、hash、help、hex、id、input、int、isinstance、issubclass、iter、len、list、locals、map、max、min、next、object、oct、open、ord、pow、print、range、repr、reversed、round、set、setattr、slice、sorted、staticmethod、str、sum、super、tuple、type、zip、Ellipsis、ArithmeticError、AssertionError、AttributeError、BaseException、EOFError、Exception、GeneratorExit、ImportError、IndentationError、IndexError、KeyboardInterrupt、KeyError、LookupError、MemoryError、NameError、NotImplementedError、OSError、OverflowError、RuntimeError、StopIteration、SyntaxError、SystemExit、TypeError、UnicodeError、ValueError、ZeroDivisionError
– micro:bit V2 –
frozenset’, ‘UnicodeError’が無くなり、’StopAsyncIteration’, ‘complex’, ‘delattr’,’memoryview’, ‘property’が増えています。
(d-05)ucollections|collections
ucollections、またはcollectionsでインポートできます。
「namedtuple, OrderedDict」が使えるようになります。※詳細はPythonのドキュメントサイトなどを参照してください。
(05-01)namedtuple
#!/usr/bin/env python
# -*- coding: utf-8 -*-
from collections import namedtuple
Item = namedtuple('Item', ('sei', 'mei', 'age', 'addr'))
AAA=Item('yamada','taro','24','oosaka')
BBB=Item('yamamoto','hanako','20','kyoto')
実行結果
>>> %Run 1004_module_02.py
>>> AAA.mei
'taro'
>>> BBB.addr
'kyoto'
– micro:bit V2 –
モジュール名がucollectionsだけになっています。
>>> import collections
>>> help(collections)
object <module 'ucollections'> is of type module
(05-02)OrderedDict
「clear, copy, fromkeys, get, items, keys, pop, popitem, setdefault, update, values」の関数があります。
#!/usr/bin/env python
# -*- coding: utf-8 -*-
import collections
od = collections.OrderedDict() #オブジェクトを作成
od['aa'] = 'osaka'
od['bb'] = 'kyoto'
od['cc'] = 'nagoya'
実行結果
>>> %Run 1004_module_03_OrderedDict.py
>>> od
OrderedDict({'aa': 'osaka', 'bb': 'kyoto', 'cc': 'nagoya'})
>>> od.setdefault('dd','tokyo') #新規追加
'tokyo'
>>> od
OrderedDict({'aa': 'osaka', 'bb': 'kyoto', 'cc': 'nagoya', 'dd': 'tokyo'})
>>> od.update(cc='kobe') #値の更新
>>> od
OrderedDict({'aa': 'osaka', 'bb': 'kyoto', 'cc': 'kobe', 'dd': 'tokyo'})
まとめ
thonny-microbitのモジュール antigravity、array、audio、builtins、collections について記載しました。