回答編集履歴

2

追記

2018/08/25 07:38

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -89,3 +89,7 @@
89
89
  print(i, b.index(a[i]))
90
90
 
91
91
  ```
92
+
93
+
94
+
95
+ リストbが重複する要素を持つ場合は、少し挙動が異なりますが。

1

追記

2018/08/25 07:38

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -21,3 +21,71 @@
21
21
 
22
22
 
23
23
  具体的なリストを例示していただくと、もう少し目的が分かりやすくなるかと。
24
+
25
+
26
+
27
+ 質問編集を受けて
28
+
29
+ ---
30
+
31
+ in演算子の使い方を誤っているだけかと。`要素 in シーケンス`です、基本的には。
32
+
33
+ ```Python
34
+
35
+ >>> lst1 = [1, 2, 3, 4, 5]
36
+
37
+ >>> lst2 = [1, 2, 3, 4, 5]
38
+
39
+ >>>
40
+
41
+ >>> lst1[0] in lst2
42
+
43
+ True
44
+
45
+ >>>
46
+
47
+ >>> lst1[0] in lst2[0]
48
+
49
+ Traceback (most recent call last):
50
+
51
+ File "<stdin>", line 1, in <module>
52
+
53
+ TypeError: argument of type 'int' is not iterable
54
+
55
+ >>>
56
+
57
+ >>> lst1[0] == lst2[0]
58
+
59
+ True
60
+
61
+ ```
62
+
63
+
64
+
65
+ というわけで、こんなコードがお望みでしょうか。
66
+
67
+ ```Python
68
+
69
+ for i in range(5):
70
+
71
+ for k in range(5):
72
+
73
+ if a[i] == b[k]:
74
+
75
+ print(i, k)
76
+
77
+ ```
78
+
79
+
80
+
81
+ あるいは
82
+
83
+ ```Python
84
+
85
+ for i in range(5):
86
+
87
+ if a[i] in b:
88
+
89
+ print(i, b.index(a[i]))
90
+
91
+ ```