[解決済み】Pythonでルックアップテーブルを使う
質問
pythonを使って、圧電式液滴生成装置を自動化しています。パルス長の各値に対して、適切な値の電圧が存在し、液滴を与える信号を生成します。この電圧の値は、実行するたびに変化し続けます(例えば、+や-10など)。そのため、私はパルス長ごとに異なる電圧値のデータベースを持っています。
Pythonでルックアップテーブルを使用することについて、いくつか知りたいことがあります。私のタスクでは、15から70までのランダムなパルス長を選び、この値をデータベースから特定の電圧範囲に関連付けたいと思います(例えば、値17に対して、ルックアップテーブルにアクセスし、35から50までの電圧範囲を返すプログラムが欲しいです)。1つの値だけでなく、全範囲を取得することは可能でしょうか?私はコーディングとPythonの初心者なので、よくわかりません。どんなヘルプでも歓迎です。ありがとうございます。
どのように解決するのですか?
どの範囲にどのような値を関連付けるかについての詳しい情報は与えられていませんので、私の答えをあなた自身の問題に移し替えることを想定しています。
ルックアップテーブルは
dictionary
を使用します。それらは中括弧で表示されます。
簡単な例です。
myDict = {1: [1, 2, 3, 4, 5],
2: [2, 3, 4, 5, 6],
3: [3, 4, 5, 6, 7]}
ここでは、3つの項目を持つ辞書を作成します。1, 2, 3. これらの各項目には、範囲が関連付けられています。この例では、ロジックは
range(i, i+5)
.
リストのように、quot;Look-Up-Table"に問い合わせるのです。
print(myDict[2])
>>> [2, 3, 4, 5, 6]
(どのように
[2]
はインデックス#2ではなく、実際には値
2
を選択します)。
辞書を手作業で作成するのではなく、自動的に構築したい場合がよくある。例えば、同じ長さの2つのリストを1つの辞書に結合するには、次のようにします。
dict
で
zip
:
indices = range(15, 76) # your values from 15 to 75
i_ranges = [range(i, i+5) for i in indices] # this constructs your ranges
myDict = dict(zip(indices, i_ranges)) # zip together the lists and make a dict from it
print(myDict[20])
>>> [20, 21, 22, 23, 24]
ちなみに、整数とリストに限定されるわけではありません。こんな感じでもOKです。
myFruits = {'apples': 20, 'cherries': 50, 'bananas': 23}
print(myFruits['cherries'])
>>> 50
関連
-
[解決済み】RuntimeWarning: invalid value encountered in double_scalars で numpy の除算ができない。
-
[解決済み】LogisticRegression: Pythonでsklearnを使用して、未知のラベルタイプ: '連続'を使用しています。
-
[解決済み] プログラムの実行やシステムコマンドの呼び出しはどのように行うのですか?
-
[解決済み] 関数内でグローバル変数を使用する
-
[解決済み] Pythonには文字列の'contains'サブストリングメソッドがありますか?
-
[解決済み] Pythonで現在時刻を取得する方法
-
[解決済み] Pythonで2つのリストを連結する方法は?
-
[解決済み] Python 3で「1000000000000000 in range(1000000000000001)」はなぜ速いのですか?
-
[解決済み】forループを使った辞書の反復処理
-
[解決済み】Pythonに三項条件演算子はありますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
Python関数の高度な応用を解説
-
pythonサイクルタスクスケジューリングツール スケジュール詳解
-
Python百行で韓服サークルの画像クロールを実現する
-
[解決済み】pygame.error: ビデオシステムが初期化されていない
-
[解決済み】numpy: true_divide で無効な値に遭遇
-
[解決済み】「SyntaxError.Syntax」は何ですか?Missing parentheses in call to 'print'」はPythonでどういう意味ですか?
-
[解決済み】Python: OverflowError: 数学の範囲エラー
-
[解決済み】Python: SyntaxError: キーワードは式になり得ない
-
[解決済み】Flaskのテンプレートが見つからない【重複あり
-
[解決済み】django インポートエラー - core.managementという名前のモジュールがない