🗐 電装工芸日記 - 舞台照明機器の製作とか -

能登半島地震で被災された方々にお見舞い申し上げます。

or 管理画面へ

2022年2月19日の投稿[1件]

Icon of admin
 今週末は小屋付きの増員ですが、毎度のことながらそれほどやることはありません。
 居眠りも出来ないので、パソコンに向かって仕事をしている風味でArt-Netのソースコードの見直しです。勢いで書いた関数型のC言語っぽいコードをPythonらしい書き方に直しつつ、贅肉を削っております。

 Pythonには群のデータを扱う方法がいくつかあります。Art-NetというかDMX512のパッチマシンを作るにはこられを巧く使うことが大事です。
 これらには大きく分けて3つあります。list型、taple型、dictionary型です。これらは似ていますが出来ることが違います。また、どれを使っても出来ることでも内容によって処理速度が違ったりします。特徴をよく理解して使わないと損です。

 list型は群に対しても個に対しても計算が出来ます。文字列に対する加工も含まれますが、他の型ではそれが出来ません。
 taple型は様々な型のデータを一つに束ねて扱えます。関数の戻り値は基本的にこれだと思っていいでしょう。taple型の使い方がわかるとPythonの便利さが実感出来てコーディングの幅も広がるような気がします。
 dictionary型はデータ参照用と言ったらいいでしょうか。キーワードに対して様々な型のデータを関連付けられ、なんといっても抽出が速い。キーワードが規則性のある数値の場合は他の2つもあまり変わらないかもしれませんが、キーワードが規則性を持たない場合はdictionary型が圧倒的に速く便利だと思います。
 具体的な違いや用法はその筋の教科書や先達の書き込みに任せますが、PythonがPythonであるところはここなのかもしれません。

 RaspberryPiが見た目以上に優秀なハードウェアなのもありますが、Pythonで制御系を書いても遅いとは感じません。
 もちろん、C言語とかで書いてコンパイルした方が速いのは間違いありませんが、書いてすぐに実行できるPythonは生産性が高いと思います。
 少し遠回りかもしれませんが、C++に書き直すことを前提にPythonで書き、動いたらC++に移植するってのが制御系を作るのにいいかもしれないなぁ~なんて思ったりしてます。コーディングの規則が違うだけで書く内容は凄く似てますので、PythonでスケッチしてC++で清書するのです。勢いで書いたPythonをPythonらしく書き直すなら同じことかなと。

#Python

■当面の課題

桜のライトアップの季節です。花粉症の季節でもあります。
自分は平気ですが、花粉症の部下は死にそうな顔をしています。

編集

■全文検索:

複合検索窓に切り替える

■複合検索:

  • 投稿者名:
  • 投稿年月:
  • #タグ:
  • カテゴリ:
  • 出力順序:

■日付検索:

■カレンダー:

2022年2月
12345
6789101112
13141516171819
20212223242526
2728

■カテゴリ:

■最近の投稿:

最終更新日時:
2024年5月4日(土) 05時49分51秒