私はPythonコードでexecまたはevalを使用しないことに関するいくつかの質問を読んでいました。evalを使用する代わりに参照で辞書を渡す/可変数の引数を渡す方法
私は現在pyramidに基づいたpython Webプログラムを持っており、フォームからいくつかの変数を受け取り、関数を呼び出します。この機能またはオプションのすべての引数、これは多かれ少なかれ、私は何をすべきかは、私は自分のアプリケーションを強化しようとしていますし、私は何か他のものではevalを交換しようとしています
command = 'function_to_be_called ('
if optional_variable_in_form in request.params :
command += 'optional_variable=optional_variable_in_form'
command += ')'
i = eval (command)
です。私はthis answerを見つけました。私の解決策を使用する代わりに、辞書を参照渡しすることを提案しています。
だから私の質問は以下のとおりです。
- は、あなたはそれが行くには良い方法だと思いますか?
- 私はいつも、著者が提案した辞書をどの関数にも渡すことができますか?
- 私はかなり気になります**が、私はそれが何をしているのかよく分かりません。あなたは私にそれについてのヒントを与えたり、私がそれについて学ぶことができる良いページを提案したりすることができますか?
との実際の質問 'D = {「クラッカー」:「ナット」、「望んで」:偽}答えるために' 'ポリーを(** d) 'も同等です。 – Duncan
素晴らしい!ありがとう。私は半分通して入力を断念したと思います! –