回答編集履歴
3
誤字修正
answer
CHANGED
@@ -16,7 +16,7 @@
|
|
16
16
|
ちょっと気になったことを列挙します。
|
17
17
|
- **なぜPython2.7を用いているのか**
|
18
18
|
2.7は2020年にサポートが打ち切られる、古いバージョンです。
|
19
|
-
特に深い理由なく2.7を
|
19
|
+
特に深い理由なく2.7を始めてしまったなら、3.xに乗り換えてください。まだ間に合います。
|
20
20
|
- **トランプの初期化の仕方が冗長**
|
21
21
|
スートとナンバーとの直積を取ればいいので、次のように書けます。
|
22
22
|
```Python
|
2
修正
answer
CHANGED
@@ -21,7 +21,7 @@
|
|
21
21
|
スートとナンバーとの直積を取ればいいので、次のように書けます。
|
22
22
|
```Python
|
23
23
|
from itertools import product
|
24
|
-
tranps = [s+str(n) for s, n in product(['S', 'H', '
|
24
|
+
tranps = [s+str(n) for s, n in product(['S', 'H', 'C', 'D'], range(1, 14))]
|
25
25
|
```
|
26
26
|
|
27
27
|
- **変数名にsetを用いてしまっている**
|
@@ -34,6 +34,8 @@
|
|
34
34
|
TypeError: 'set' object is not callable
|
35
35
|
```
|
36
36
|
|
37
|
+
他にもint, str, max, list などを使ってしまいがちです。
|
38
|
+
|
37
39
|
質問の仕方について
|
38
40
|
---
|
39
41
|
teratailには、上記のようにコードを見やすく表示する機能があります。
|
1
追記
answer
CHANGED
@@ -9,4 +9,35 @@
|
|
9
9
|
if tranp in tranp_in:
|
10
10
|
continue
|
11
11
|
print tranp
|
12
|
-
```
|
12
|
+
```
|
13
|
+
|
14
|
+
ついでに
|
15
|
+
---
|
16
|
+
ちょっと気になったことを列挙します。
|
17
|
+
- **なぜPython2.7を用いているのか**
|
18
|
+
2.7は2020年にサポートが打ち切られる、古いバージョンです。
|
19
|
+
特に深い理由なく2.7を初めてしまったなら、3.xに乗り換えてください。まだ間に合います。
|
20
|
+
- **トランプの初期化の仕方が冗長**
|
21
|
+
スートとナンバーとの直積を取ればいいので、次のように書けます。
|
22
|
+
```Python
|
23
|
+
from itertools import product
|
24
|
+
tranps = [s+str(n) for s, n in product(['S', 'H', 'D', 'C'], range(1, 14))]
|
25
|
+
```
|
26
|
+
|
27
|
+
- **変数名にsetを用いてしまっている**
|
28
|
+
本来のsetを隠してしまう(シャドウイング)ので、避けるべき書き方です。
|
29
|
+
```Python
|
30
|
+
>>> set = set([1, 2, 3])
|
31
|
+
>>> set_b = set([4, 5, 6])
|
32
|
+
Traceback (most recent call last):
|
33
|
+
File "<stdin>", line 1, in <module>
|
34
|
+
TypeError: 'set' object is not callable
|
35
|
+
```
|
36
|
+
|
37
|
+
質問の仕方について
|
38
|
+
---
|
39
|
+
teratailには、上記のようにコードを見やすく表示する機能があります。
|
40
|
+
質問編集画面を開き、コードを選択した状態で<code>ボタンを押してください。
|
41
|
+
特にPythonの場合、インデントが崩れるとコードの意味が変わってしまいます。
|
42
|
+
|
43
|
+
また、リンクも[このように](https://teratail.com/questions/109970)貼れますよ。いろいろ試してみてくださいね。
|