サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
パリ五輪
ozsys.cocolog-nifty.com
Windows7上に作ったシリアル通信のテスト環境で、Pythonによるシリアル通信を試してみた。今回使ったはPySerial2.5とPython2.6だ。 PythonアプリケーションとTeraTermとの間で読み書きできることを確認できた。 以下は、COM20とCOM21を仮想接続した状態で、TeraTermでCOM20に接続し、PythonアプリケーションでCOM21に接続する場合だ。 (1)COM21に接続して"hello"を入力してポートを閉じる >>> import serial >>> ser = serial.Serial(20) >>> print ser.portstr >>> ser.write("hello") >>> ser.close() するとTeraTermに"hello"が表示される。 (2)COM21に接続してTeraTermからの入力を待つ >>> s
Pythonは、リスト内包式(list comprehension expressions)を使ってリストを生成することができる。 しかし、生成したリストの要素の最初のほうだけを使って、後は使わない場合があるプログラムを考えると、一度に全て計算してしまうのは無駄だ。計算コストとメモリ領域の無駄がある。 できれば、必要になった時に、必要な分だけ計算したい。 こういう計算方法を遅延評価と言うが、Pythonには遅延評価を行う仕組みが用意されている。ジェネレータ式(generator expressions)がそれだ。 ジェネレータ式はこう書く。 >>> squares = (x ** 2 for x in range(5)) ジェネレータ式が生成するリスト要素は、イテレータ(上の場合はsquares)のnextメソッドが呼ばれる度に計算される。 >>> squares.next() 0 >>>
このページを最初にブックマークしてみませんか?
『ozsys.cocolog-nifty.com』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く