回答編集履歴
3
追記
answer
CHANGED
@@ -23,4 +23,110 @@
|
|
23
23
|
def n(m):
|
24
24
|
10**11+10**m
|
25
25
|
```
|
26
|
-
これは関数の定義ではなく、for文の中で関数を定義しているだけです(しかもreturnもしていないから無意味な関数だし・・・)。for文を回している意味もないし(何回定義しても最後に定義されたものしか残らないし、そもそもforで値が束縛されるmと仮引数のmとが別物なので意味ないとか、それ以前にnを呼び出していないとか・・・)、何がしたいのかよくわかりません。
|
26
|
+
これは関数の定義ではなく、for文の中で関数を定義しているだけです(しかもreturnもしていないから無意味な関数だし・・・)。for文を回している意味もないし(何回定義しても最後に定義されたものしか残らないし、そもそもforで値が束縛されるmと仮引数のmとが別物なので意味ないとか、それ以前にnを呼び出していないとか・・・)、何がしたいのかよくわかりません。
|
27
|
+
|
28
|
+
|
29
|
+
### 追記2
|
30
|
+
1つずつ加算で計算するコードはなんか書けました。
|
31
|
+
|
32
|
+
```python
|
33
|
+
def incr_enzan(lst):
|
34
|
+
result_lst = lst[:]
|
35
|
+
if lst[-1] != 1:
|
36
|
+
first_one_passed = False
|
37
|
+
for i, x in enumerate(lst):
|
38
|
+
if x == 1 and not first_one_passed:
|
39
|
+
first_one_passed = True
|
40
|
+
elif x == 1 and first_one_passed:
|
41
|
+
break
|
42
|
+
result_lst[i] = 0
|
43
|
+
result_lst[i+1] = 1
|
44
|
+
else:
|
45
|
+
for i, x in enumerate(lst):
|
46
|
+
if x == 1:
|
47
|
+
break
|
48
|
+
result_lst[-1] = 0
|
49
|
+
result_lst[i] = 0
|
50
|
+
result_lst[i+1] = 1
|
51
|
+
result_lst[i+2] = 1
|
52
|
+
return result_lst
|
53
|
+
|
54
|
+
|
55
|
+
lst = [1,1,0,0,0,0,0,0,0,0,0,0]
|
56
|
+
print(1, lst)
|
57
|
+
|
58
|
+
for x in range(2, 67):
|
59
|
+
lst = incr_enzan(lst)
|
60
|
+
print(x, lst)
|
61
|
+
"""
|
62
|
+
1 [1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
63
|
+
2 [1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
64
|
+
3 [1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]
|
65
|
+
4 [1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]
|
66
|
+
5 [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]
|
67
|
+
6 [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]
|
68
|
+
7 [1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]
|
69
|
+
8 [1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]
|
70
|
+
9 [1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]
|
71
|
+
10 [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]
|
72
|
+
11 [1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]
|
73
|
+
12 [0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0]
|
74
|
+
13 [0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0]
|
75
|
+
14 [0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0]
|
76
|
+
15 [0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0]
|
77
|
+
16 [0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0]
|
78
|
+
17 [0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0]
|
79
|
+
18 [0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0]
|
80
|
+
19 [0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0]
|
81
|
+
20 [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0]
|
82
|
+
21 [0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1]
|
83
|
+
22 [0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0]
|
84
|
+
23 [0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0, 0]
|
85
|
+
24 [0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0, 0]
|
86
|
+
25 [0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0, 0]
|
87
|
+
26 [0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0]
|
88
|
+
27 [0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0]
|
89
|
+
28 [0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0, 0]
|
90
|
+
29 [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1, 0]
|
91
|
+
30 [0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 0, 1]
|
92
|
+
31 [0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0, 0]
|
93
|
+
32 [0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0, 0]
|
94
|
+
33 [0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0, 0]
|
95
|
+
34 [0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 0]
|
96
|
+
35 [0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0]
|
97
|
+
36 [0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0]
|
98
|
+
37 [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1, 0]
|
99
|
+
38 [0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 0, 1]
|
100
|
+
39 [0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0, 0]
|
101
|
+
40 [0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0, 0]
|
102
|
+
41 [0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0, 0]
|
103
|
+
42 [0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0]
|
104
|
+
43 [0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0]
|
105
|
+
44 [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]
|
106
|
+
45 [0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 0, 1]
|
107
|
+
46 [0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0, 0]
|
108
|
+
47 [0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0, 0]
|
109
|
+
48 [0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0, 0]
|
110
|
+
49 [0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0]
|
111
|
+
50 [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0]
|
112
|
+
51 [0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1]
|
113
|
+
52 [0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0, 0]
|
114
|
+
53 [0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0, 0]
|
115
|
+
54 [0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0, 0]
|
116
|
+
55 [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1, 0]
|
117
|
+
56 [0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1]
|
118
|
+
57 [0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0, 0]
|
119
|
+
58 [0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0, 0]
|
120
|
+
59 [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1, 0]
|
121
|
+
60 [0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 1]
|
122
|
+
61 [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0, 0]
|
123
|
+
62 [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1, 0]
|
124
|
+
63 [0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 1]
|
125
|
+
64 [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 0]
|
126
|
+
65 [0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 1]
|
127
|
+
66 [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1]
|
128
|
+
"""
|
129
|
+
```
|
130
|
+
|
131
|
+
もしかしたら式1つでn番目の項が出せるかもしれませんが、思いつかなかったので得意な人に譲ります・・・。
|
132
|
+
こういうコードで一式出して、辞書に突っ込んでおけば良いでしょう。
|
2
追記
answer
CHANGED
@@ -12,4 +12,15 @@
|
|
12
12
|
['<', 'f', 'u', 'n', 'c', 't', 'i', 'o', 'n', ' ', 'n', ' ', 'a', 't', ' ', '0', 'x', '7', 'f', '5', '1', '6', '1', 'a', 'e', '1', 'f', '2', '8', '>']
|
13
13
|
```
|
14
14
|
|
15
|
-
`str(func)`で関数オブジェクトを表す文字列が返るので、それを変換しようとしてしまっています・・・。
|
15
|
+
`str(func)`で関数オブジェクトを表す文字列が返るので、それを変換しようとしてしまっています・・・。
|
16
|
+
|
17
|
+
### 追記
|
18
|
+
```python
|
19
|
+
for m in range(1, 12):
|
20
|
+
def n(m):
|
21
|
+
10**12+10**m
|
22
|
+
for m in range(12, 22):
|
23
|
+
def n(m):
|
24
|
+
10**11+10**m
|
25
|
+
```
|
26
|
+
これは関数の定義ではなく、for文の中で関数を定義しているだけです(しかもreturnもしていないから無意味な関数だし・・・)。for文を回している意味もないし(何回定義しても最後に定義されたものしか残らないし、そもそもforで値が束縛されるmと仮引数のmとが別物なので意味ないとか、それ以前にnを呼び出していないとか・・・)、何がしたいのかよくわかりません。
|
1
説明
answer
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
`def`は関数の定義であって呼び出しではないので、そのコードで関数を定義している意味はありません。
|
1
|
+
`def`は関数の定義であって呼び出しではないので、そのコードで関数を定義している意味はありません。というか、意図通り動いていません。
|
2
2
|
|
3
3
|
エラーの原因は`list(str(n))`が何になっているか確認してみるとわかります。
|
4
4
|
|