「解決済み」とさせて頂きましたが、早合点しておりました。
先の同様の質問にお答え頂いた方には、恐縮であります。
再掲にて、失礼いたします。
クラスをつくってみました。
がしかし、クラス内の、ひとつのメソッド(XORメソッド)が、うまく機能しません。
どのようにしたら良いか、どうぞ、ご教示くださいませ。
クラスは以下の通りです。
python
1class logicCircuit: 2 def __init__(self,a,b): 3 self.a = a 4 self.b = b 5 6 def AND(self): 7 if 0 in [self.a,self.b]: 8 return 0 9 else: 10 return 1 11 12 def OR(self): 13 if 1 in [self.a,self.b]: 14 return 1 15 else: 16 return 0 17 18 def NAND(self): 19 if 0 in [self.a,self.b]: 20 return 1 21 else: 22 return 0 23 24 def XOR(self): 25 s1=self.OR() 26 s2=self.NAND() 27 y=self.AND(s1,s2) 28 print(y)
インスタンス化した後の、メソッドのアウトプットは、次の通りです。
python
1output = logicCircuit(0,0) 2 3output.AND() 40 5 6output.OR() 70 8 9output.NAND() 101 11 12output.XOR() 13--------------------------------------------------------------- 14TypeError Traceback (most recent call last) 15<ipython-input-9-9f880d5f3490> in <module> 16----> 1 output.XOR() 17 18<ipython-input-4-b416e483a293> in XOR(self) 19 25 s1=self.OR() 20 26 s2=self.NAND() 21---> 27 y=self.AND(s1,s2) 22 28 print(y) 23 24TypeError: AND() takes 1 positional argument but 3 were given 25
引数の数が合っていない...ということで、どこかにselfを明示的に入れるのかな、と思ったりもしています。
よろしく、お願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/10/07 08:32
2019/10/07 08:58