-3

値 { 1, 43, ... } を取る変数 V があり、V が取った正確な値に基づいて、変数 Z 値 { X1, X2, ... } に割り当てたいと思います。例: V が 1 の場合、Z は X1 です。V が予期せず、定義された値のセットの一部ではない場合、動作は「未定義」になる可能性があります。

基本的に、Python で switch ステートメントを実行する方法がわかりません。説明書に「スイッチ」の記載がありませんでした。

4

3 に答える 3

2
z_values = {
    1: X1,
    42: X2,
    }

Z = z_values[V]

V が有効な値の 1 つでない場合に何をしたいのかを述べていません。

于 2012-07-22T01:49:33.130 に答える
1
if v == 1:
    z = 'x1'
elif v == 42:
    z = 'x2'

私があなたの望むものを完全に誤解していない限り、あなたは単純な if ステートメントを求めています…?

于 2012-07-22T01:49:41.787 に答える
1

単純な「If X then Y else Z」(x ? y : z他の多くの言語) の場合、これは機能するはずです。

target = y if x else z

必要なものが基本的にスイッチである場合、次のようなものが機能するはずです。

def func_x():
    print "x"
def func_y():
    print "y"
def func_z():
    print "z"
def default():
    print "nope"
{
    "x": func_x,
    "y": func_y,
    "z": func_z
}.get(input, default)()
于 2012-07-22T01:54:53.520 に答える