私も答えを探してみましたが、他の人の同様の問題に対する答えがわかりません...
tfile= open("/home/path/to/file",'r')
def temp_sky(lreq, breq):
for line in tfile:
data = line.split()
if ( abs(float(data[0]) - lreq) <= 0.1
and abs(float(data[1]) - breq) <= 0.1):
T= data[2]
return T
print temp_sky(60, 60)
print temp_sky(10, -10)
次のエラーが発生します
7.37052488
Traceback (most recent call last):
File "tsky.py", line 25, in <module>
print temp_sky(10, -10)
File "tsky.py", line 22, in temp_sky
return T
UnboundLocalError: local variable 'T' referenced before assignment
最初のprintステートメントは正しく機能しますが、2番目のステートメントでは機能しません。Tをグローバル変数にしようとしましたが、これで両方の答えが同じになります。助けてください!