回答編集履歴
1
追記
answer
CHANGED
@@ -9,4 +9,24 @@
|
|
9
9
|
`array`の長さがゼロにならないとwhileを抜けないのに、次の行でprint(array[0])って矛盾していませんか?
|
10
10
|
`array`(グローバル変数?)の長さを変えている場所も見当たりませんし。
|
11
11
|
|
12
|
-
X番目に処理を変えたいのであれば`while`ではなく`for i, x in enumerate(array)`のように`enumrate`を使った方が良いと思います。
|
12
|
+
X番目に処理を変えたいのであれば`while`ではなく`for i, x in enumerate(array)`のように`enumrate`を使った方が良いと思います。
|
13
|
+
|
14
|
+
---
|
15
|
+
コメントを受けてソースを変えました。
|
16
|
+
そもそもwhileで配列を削除(list.pop(-1)を使う?)していくコードはバグが入りやすく、理解もしにくいと思います。
|
17
|
+
このような処理なら`for`を使うのが順当かと思います。
|
18
|
+
|
19
|
+
```python
|
20
|
+
def X(引数):
|
21
|
+
aa =A(引数)
|
22
|
+
bb =B(引数)
|
23
|
+
if len(bb) != 0:
|
24
|
+
print(bb)
|
25
|
+
cc =C(引数)
|
26
|
+
dd =D(引数)
|
27
|
+
|
28
|
+
for a in array:
|
29
|
+
X(a)
|
30
|
+
```
|
31
|
+
|
32
|
+
bbの長さがゼロなら`print`したいという事ですが、こういう事でしょうか・・・?
|