私はPythonで小さな一連のスクリプトに取り組んでおり、これにたどり着きました:
line = "a b c d e f g"
a, b, c, d, e, f, g = line.split()
これらは実装中に行われる決定であるという事実を十分に認識していますが、python は次のようなものを提供すべきではありません (または提供します)。
_, _, var_needed, _, _, another_var_needed, _ = line.split()
Prolog が提供するのと同様に、有名なsingleton variables
.
よくわかりませんが、不要な割り当てを避けることはできませんか? または、split
呼び出しの結果への参照を作成しても、オーバーヘッドとしてカウントされませんか?
編集:
申し訳ありませんが、ここでの私のポイントは次のとおりです。プロローグでは、私に関する限り、次のような表現で:
test(L, N) :-
test(L, 0, N).
test([], N, N).
test([_|T], M, N) :-
V is M + 1,
test(T, V, N).
_
リストに存在する値への参照が作成されていないと思われるため、によって表される変数にはアクセスでき[_|T]
ません。
しかし、Python では、 を使用する_
と、 に最後に割り当てられた値を使用できます。_
また、変数ごとに割り当てが行われると思いますが、_
これはオーバーヘッドと見なされる可能性があります。
ここでの私の質問は、そのような不必要な属性を回避するための構文があってはならないかどうか (またはある場合) です。