回答編集履歴
2
追記
answer
CHANGED
@@ -21,6 +21,39 @@
|
|
21
21
|
論理バグがあり、例えば`z`をまともに置き換えできません。
|
22
22
|
もうちょっと考えなおした方が良いでしょうね。
|
23
23
|
|
24
|
+
書いてみた
|
25
|
+
---
|
26
|
+
個人的な趣味全開です。
|
27
|
+
```Python
|
28
|
+
from string import ascii_lowercase as chars
|
29
|
+
|
30
|
+
|
31
|
+
def revolve(seq, shift):
|
32
|
+
shift %= len(seq)
|
33
|
+
return seq[shift:] + seq[:shift]
|
34
|
+
|
35
|
+
def make_decode(shift):
|
36
|
+
rep_table = str.maketrans(
|
37
|
+
chars, revolve(chars, shift)
|
38
|
+
)
|
39
|
+
|
40
|
+
def decode(text):
|
41
|
+
return text.translate(rep_table)
|
42
|
+
|
43
|
+
return decode
|
44
|
+
|
45
|
+
|
46
|
+
decode = make_decode(3)
|
47
|
+
print(
|
48
|
+
decode('ab c')
|
49
|
+
)
|
50
|
+
```
|
51
|
+
|
52
|
+
**実行結果** [Wandbox](https://wandbox.org/permlink/hvvM3xrw5BE2mPXr)
|
53
|
+
```plain
|
54
|
+
de f
|
55
|
+
```
|
56
|
+
|
24
57
|
コードの書き方について
|
25
58
|
---
|
26
59
|
teratailには、コードを見やすく表示する機能があります。
|
1
追記
answer
CHANGED
@@ -19,4 +19,11 @@
|
|
19
19
|
ただし
|
20
20
|
---
|
21
21
|
論理バグがあり、例えば`z`をまともに置き換えできません。
|
22
|
-
もうちょっと考えなおした方が良いでしょうね。
|
22
|
+
もうちょっと考えなおした方が良いでしょうね。
|
23
|
+
|
24
|
+
コードの書き方について
|
25
|
+
---
|
26
|
+
teratailには、コードを見やすく表示する機能があります。
|
27
|
+
質問編集画面を開き、コードを選択した状態で<code>ボタンを押してください。
|
28
|
+

|
29
|
+
特にPythonの場合、インデントが崩れるとコードの意味が変わってしまいます。
|