teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

追記

2019/06/07 19:48

投稿

hayataka2049
hayataka2049

スコア30939

answer CHANGED
@@ -6,4 +6,25 @@
6
6
  > ```python
7
7
  > for x in a[:]:
8
8
  > if x < 0: a.remove(x)
9
- > ```
9
+ > ```
10
+
11
+ ---
12
+
13
+ 実際には、ループ対象の`list`を直接いじるようなコードは「書かない」という方針を前提とするのがいいでしょう。
14
+
15
+ 内包表記を使って、単に一行で
16
+
17
+ ```python
18
+ lst = [i for i in range(10) if i % 2 == 0]
19
+ ```
20
+
21
+ とするか、
22
+
23
+ ```python
24
+ lst = []
25
+ for i in range(10):
26
+ if i % 2 == 0:
27
+ lst.append(i)
28
+ ```
29
+
30
+ として新しく作るのがいいのでは。