稼働中

マイクロビット(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 について記載しました。