example.pyユーザーは入力を介して変数や他のデータ構造を参照できるようにするにはどうすればよいですか?
dumpVar = ['a','b','c','d','e','f','g']
def examineVar():
container = input('Which var would you like to examine? ')
for i in range (len(container)):
print(container[i])
.
のPython 3.5(32ビット)
>>> exec(open(r'c:\users\me\desktop\code\example.py').read())
>>> examineVar()
Which variable would you like to examine? _
.
はここ--Iダウン運転だ私はから実行している '例' という名前の.pyファイルを持っていますインタプリタを使ってコード環境を読み込むことができます。この特定の環境には、1つの配列(すでに入力されている)と、入力に関する情報を一度に1行ずつ返すための基本コマンドを装備した単一の関数が含まれています。
私がしたいのは、スクリプトで作成した変数名を入力し、その内容を印刷する関数を持つようにします。
>>> dumpVar
は、1行に表示された配列を表示することができますが、私はどのようにすればよいかを理解しようとしています...私はメタ情報を推測します。ユーザ入力。それが意味をなさないならば。
とにかく私はexec()
を使用しようとしていましたが、例外を生成する傾向があり、例外を生成しない唯一の時間は、一度にdumpVar
の1文字を印刷しただけです。毎回新しい行を作成します(もちろん、新しい行は望ましい動作です)。
したがって、入力文字列の文字ではなく、変数の内容を生成するために関数を変更するにはどうすればよいですか?
これはpythonのドキュメントでlist()を検索した後の答えだと思っていましたが、試してみましたが、このコメントのスペースがインタープリタの新しい行を表す 'dump V ar'を再度生成しました。 – Musixauce3000
私は最初にやりたいことを知らなかった。辞書の使用を検討し、私の答えを更新します。また、印刷時に新しい行を削除するには、 'end ='が '' ''の' print(object [、end =]) 'を使います。 –
この関数は、ユーザが入力した変数名の内容を一度に1行戻すことを目的としています。 – Musixauce3000