私は、select_image()という名前のクラス以外の関数からtextというNNクラス変数にアクセスしたいと思います。これはラベルとして表示する必要があります。可変テキストの場合、getTextはそれを呼び出すすべての人に利用可能にする必要がありますが、実装した方法では機能しません。どのようにして正しく行うことができますか?ただreturn self.text
を使用getText(self)
の身体に任意のヘルプPythonはクラスの外部から変数を取得します
class NN:
def __init__(self, ni, nh, no):
# number of input, hidden, and output nodes
self.ni = ni + 1 # +1 for bias node
self.nh = nh
self.no = no
#activations for nodes
self.ai = [1.0] * self.ni
self.ah = [1.0] * self.nh
self.ao = [1.0] * self.no
#create weights
self.wi = makeMatrix(self.ni, self.nh)
self.wo = makeMatrix(self.nh, self.no)
def test(self, patterns):
for p in patterns:
print(p[0], '->', self.update(p[0]))
a = self.update(p[0])
b = a[0]
print(b)
###############TEXT VARIABLE############
if b >= 0.5:
text = "Melanoma"
else:
text = "Healthy"
return text
def getText(self):
self.text=text
return text
def select_image():
text = NN.getText()
print(text)
label7 = Label(root, text=text)
label7.pack(side="bottom", padx=10, pady=10)
ちょうど 'NN.text'を使用しています。問題は、 'text'は' getText'で定義されていないので、あなたは何が起こると思いますか分かりません。良いことは、Pythonでgetterとsetterを定義する必要がないということです。属性にアクセスするだけです。ですから、 'select_image'では' text = NN.text'が必要です。 –
'self.text = text' ??? – alfasin
コードを正しくインデントするように努力してください... – donkopotamus