2017-04-09 5 views
0

私は学校のためのプロジェクトに取り組んでいます、私はノートパソコンのようなデバイスで障害を識別するシステムを作成する必要があります。変数を実行せずに入力と等しい変数をインポートするにはどうすればよいですか?

私はユーザーの電子メールと名前を.txtファイルに印刷しようとしていますが、これらの変数は別のpythonファイルに格納されています。 から_____のインポート_____を使用して変数をインポートすると、変数が実行されるので、入力関数を使用して実装した質問が表示されます。

助けてください!ここ

は、いくつかのテストコードが

TEST1ある:

userName = input ("What is your name ? ") 

userEmail = input ("What is your email address? ") 

import test2 

TEST2:

from test1 import userName 
from test1 import userEmail 

caseNumber = (random.randint(0,999999)) 

file = open ("CaseInfo.txt","w") 
file.write(userName) 
file.write(userEmail) 
file.write(caseNumber) 

Iの代わりに変数を印刷される変数の値にこれを実行すると、再実行され質問が再び尋ねられます。

+1

あなた自身で作成したコードですか? – elena

+0

@elena私はすでにを使って変数をインポートしようとしましたが、コードを実行すると、以前のファイルのように変数の値の代わりに質問が表示されます。この場合はユーザーの名前)。 – Iamaspacellama

+0

@wwiiあなたは精巧にできますか? – Iamaspacellama

答えて

1

あなたの問題は test2は

TEST1を実行しているTEST1からimport文を削除することによって解決し、常にすることができます

userName = input ("What is your name ? ") 
userEmail = input ("What is your email address? ") 

#import test2 

TEST2:

from test1 import userName 
from test1 import userEmail 
caseNumber = (random.randint(0,999999)) 

file = open ("CaseInfo.txt","w") 
file.write(userName) 
file.write(userEmail) 
file.write(caseNumber) 

またはTEST3:

import test1 
caseNumber = (random.randint(0,999999)) 

file = open ("CaseInfo.txt","w") 
file.write(test1.userName) 
file.write(test1.userEmail) 
file.write(test1.caseNumber) 
+0

残念ながら、私のコードには実際のコードのようにコードの途中でユーザーの入力に依存する多くのファイルにtest2(ファイルを開いて書き込む)で発生する操作が発生しているため、これは私のコードには当てはまりませんコード内の多くのサブメニューとtest2での操作は、Ifステートメント内に含まれています。 – Iamaspacellama

+1

この場合、関連するすべての詳細を含む新しい質問を投稿する必要があります。最小限の例だけでなく、プロセスのテキスト記述も含めてください。 – wwii

+0

@Iamaspacellama 'test'を複数のPythonファイルにインポートする必要があるということですか?私はwwiiに同意します:現在のコードで問題がより明確に記述された新しい質問と、問題を再現し修正できるように問題に焦点を当てたMCVE([mcve])を書くべきです。 –

関連する問題