ホーム>source
<前>ウィズウィズ ウィズウィズ class c(): def foo(self): self.foo.loss1 = 20 return(50) prob = c() l1 = prob.foo.loss1 print(l1)
あなたの答え
  • 解決した方法 # 1

    クラスの構成はここではありません。したがって、2つの入力数値を取り込み、それらの合計をメソッド foo を介して返そうとしている 。 Klass を作ろう  ここであなたの意図を満たします。

    ウィズウィズ
    

    次のようなクラスを使用します。

    ウィズウィズ
    

    これは示しています:

    ウィズウィズ
    

  • 解決した方法 # 2

    あなたはいくつかのことを間違っています。属性は、クラスメソッドが呼び出されたときにのみ追加され、そのインスタンスを作成するまで追加できません。また、属性を適切に追加していません。

    機能するバージョンは次のとおりです。

    <前>ウィズウィズ

  • 解決した方法 # 3

    OPの意図は質問とは異なるようですが、以下は元の質問に回答する必要があります。


    それらをメソッドから取り出します-実際には呼び出していないため、属性を定義する時間はありませんでした:

    <前>ウィズウィズ

    ここではインスタンスは必要ありません。クラス定義だけです。

    class Klass: def __init__(self, loss1, loss2): """Take input and initialize your class.""" self.loss1 = loss1 self.loss2 = loss2 def foo(self): """Method that returns summation of the inputs.""" return self.loss1 + self.loss2

関連記事

  • 前へ java - JPAクエリ:サブクエリをグループ化条件に結合する
  • 次へ javascript - 位置情報関数でsetStateを使用して状態が更新されない