2017-11-15 7 views
-1

プログラムを何回も実行してデータを収集する必要がある問題に取り組んでいます。たとえば、プログラムがコマンドを終了するたびに、実行するたびに異なる値tが与えられます。私の仕事は、プログラムのN回の実行からtを集めることです。 tは毎回違うでしょう。ここにプログラムがあります:実行中のプログラムからデータを収集する

import random 
th=0 
t=0 
tr=0 
result=[] 
for i in range(7): 
    i=random.randint(0,1) 
    result.append(i) 
print(result) 
a=0 
b=len(result)-1 
while th<50: 

    j=random.randint(a,b) 
    i=j-1 
    k=j+1 
if k<b 
    k=0 
if result[i]==result[k]: 
    if result[j]!=result[i]: 
     result[j]==result[i] 
     th=0 
     t+=1 
    else: 
     th+=1 
     t+=1 
    else: 
    th+=1 
    t+=1 

    tr= t-th 
print(tr) 
print (result) 

このプログラムでは、すべての実行があなたに新しい結果をもたらします。この生成された配列では、0と1の異なる配列が明らかに毎回存在するため、異なるtが明らかに存在します。だから、結果として生まれたt、trは、別のところに残っているでしょう。 私は新しいウィンドウでそれを行う必要があるか分からない、またはこれを行うことができる特定の機能があります。また、この質問が簡単で文章がある場合は、このような問題の名前が何であるかを記入してください。感謝:)

はところで、Pythonで3.6

+0

この問題の問題は、それが簡単すぎるということではありません。それは広すぎます。可能な答えはたくさんあります。なぜあなたは何度もプログラムをやりますか?それは毎回同じ答えを提供しませんか? –

+0

さて、この質問のおかげで、私は私の説明を更新します。 –

+0

このスクリプトを何度も実行できるPython関数に変換する方法を読むのが最も簡単でおそらく最良の方法です。次に、呼び出し側のプログラムでは、自分で設定した分散目標を達成するために必要なだけ関数を実行するだけです。関数を呼び出しプログラムに返すようにすることもできます。呼び出しプログラムは、ファイルを安全にファイルに書き込む責任があります。これは非常に基本的なプログラミングであり、難しいことではありません。 –

答えて

0

作業イムhow to make one Python script launch anotherを参照してください:あなたは、他のスクリプトを実行して出力を収集するためにPythonスクリプトを書くことができます。関数呼び出しからの戻り値として出力を受け取ることができ、どの関数からも同じように集計できます。

あなたの「実行中のプログラム」とあなたのマスタースクリプトは返される情報の形式に同意する必要があることに注意してください。あなたが疑問がある場合は、マスタースクリプトが受け取ったものと返された値のタイプをプリントアウトすることから始めます。

+0

大丈夫かもしれませんが、 –

+0

これは私の意図が何であるかを明確にします: –

関連する問題