回答編集履歴
2
誤字
test
CHANGED
@@ -46,7 +46,7 @@
|
|
46
46
|
|
47
47
|
|
48
48
|
|
49
|
-
True を返す
|
49
|
+
True を返す条件を or や and でつなげて
|
50
50
|
|
51
51
|
return True と Return False が それぞれ 1 箇所だけにすることも可能ですね。
|
52
52
|
|
1
追記
test
CHANGED
@@ -53,3 +53,39 @@
|
|
53
53
|
|
54
54
|
|
55
55
|
数字 * 100 +スーツの数 でカードを点数化すれば、その点数の比較をするだけで済ますこともできそうです。
|
56
|
+
|
57
|
+
|
58
|
+
|
59
|
+
質問文にあるコードの最適化を進めていくと
|
60
|
+
|
61
|
+
```python3
|
62
|
+
|
63
|
+
if (self.value > c2.value) or (self.value == c2.value and self.suit > c2.suit):
|
64
|
+
|
65
|
+
return True
|
66
|
+
|
67
|
+
return False
|
68
|
+
|
69
|
+
```
|
70
|
+
|
71
|
+
|
72
|
+
|
73
|
+
となります。(reutrn True か return False でメソッドが終了する)
|
74
|
+
|
75
|
+
|
76
|
+
|
77
|
+
でも つぎのように
|
78
|
+
|
79
|
+
```python3
|
80
|
+
|
81
|
+
if self.value == c2.value:
|
82
|
+
|
83
|
+
return self.value > c2.value
|
84
|
+
|
85
|
+
return self.suit > c2.suit
|
86
|
+
|
87
|
+
```
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
と、return スーツの比較結果 か return 数字の比較結果 でメソッドが終了するのも良いかもしれません。
|