私はこのようなことをしようとしています
更新 - アプリに関する詳細
アプリは、いくつかの変数をユーザーに「公開」します。公開された変数の例は、user_name です。アプリのユーザーは、user_name.upper() として設定できる「user_name_upper」という新しい変数を作成できます。もう 1 つの例は、公開された変数 first_name と last_name で、ユーザーは「full_name = last_name.upper() + ',' + first_name.upper()」という名前の新しい変数を作成できます。これは、入力ボックスの UI 要素を使用して入力されます。したがって、プログラムへのフックはありません。または、これを Excel のようなレポートと考えてください。新しい列を作成して、既に定義されている変数を操作することができます。
このアプリのユーザーはプログラマーではありません。ただし、文字列操作を回避する方法を見つけるために、例のリストを与えることができます
ただし、私の式は文字列操作に使用されます。「string3 = string1 + string2」のようなもの。ここで、string3 の値を、string2 を追加した string1 の値に設定したいと思います。または「string1 = string2.lower()」
私が調査した結果、eval は使用できるが非常に危険であるという結論に達しました。私が理解していることから、ast_literal_eval() は、ここで説明されているように、lower() のような文字列操作メソッドでは機能しません。
これをどうするかについて何か提案はありますか?