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

質問編集履歴

2

タイトルの修正

2019/05/23 06:46

投稿

TeRa_130
TeRa_130

スコア61

title CHANGED
@@ -1,1 +1,1 @@
1
- Python:リストから特定値だけを削除した
1
+ Python:def中のdelの扱方について
body CHANGED
File without changes

1

情報の追加

2019/05/23 06:46

投稿

TeRa_130
TeRa_130

スコア61

title CHANGED
File without changes
body CHANGED
@@ -1,11 +1,12 @@
1
- ### リストから特定値だけを削除した
1
+ ### def中のdelの扱方について
2
2
 
3
3
  pythonを使用しています。
4
- リストから特定の値だけをリストから特定の値だけを削除したいです。
4
+ defで義した関数中のdelの扱い方がわからいです。
5
5
  下記のように書いています。
6
6
  ```python
7
7
  a = [[1,2,3],[2,4,6],[1,3,5],[1,4,9]]
8
8
 
9
+ #data…リスト、num…参照したい数字
9
10
  def A(data, num):
10
11
  li = []
11
12
  for i in range(len(data)):
@@ -17,4 +18,40 @@
17
18
  return li
18
19
  ```
19
20
  何度も回すうちにreturnで得られる結果が、
20
- カラのリストになっていってしまって困っています。
21
+ カラのリストになっていってしまって困っています。
22
+
23
+
24
+ ### 追記
25
+ . どんなふうに関数Aを呼び出したか
26
+ ```python
27
+ In[1]:
28
+ A(a,1)
29
+
30
+ In[2]:
31
+ A(a,1)
32
+ ```
33
+
34
+ ・どんな実行結果になったか
35
+ 一回目は、想定していた結果が得られたのですが、
36
+ 二回目以降は、一回目と同じ結果が得られません。
37
+ ```python
38
+ Out[1]:
39
+ [[2, 3], [3, 5], [4,9]]
40
+
41
+ Out[2]:
42
+ []
43
+ ```
44
+
45
+
46
+ ・どのような結果を期待していたか
47
+ 何回繰り返しても同じ結果が得られることが望ましいです。
48
+ ```python
49
+ Out[1]:
50
+ [[2, 3], [3, 5], [4,9]]
51
+
52
+ Out[2]:
53
+ [[2, 3], [3, 5], [4,9]]
54
+ ```
55
+ ・どんな原因があると現時点で推測しているか
56
+ 「del」の使い方や仕様がわかっていないのですが、
57
+ 二回目以降の処理にかかわっているのだと思います。