回答編集履歴
10
全体的に修正
test
CHANGED
@@ -1,6 +1,12 @@
|
|
1
1
|
> for文等を使って一つ一つ取り出して確認する方法は時間がかかりすぎるのとコードが増えて見辛くなるので
|
2
2
|
|
3
|
-
愚直にループするしかないと思いますけど、any
|
3
|
+
愚直にループするしかないと思いますけど、map, any, all とジェネレータ式を使えば、ひとつ見つかった時点で処理を終了するので多少は速いです。
|
4
|
+
|
5
|
+
```python
|
6
|
+
test = [["a", 102], ["b", 2022], ["c", 23302], ["d", 4502], ["e", 5022], ["f", 1602],]
|
7
|
+
|
8
|
+
print(5000 not in map(lambda t: t[1], test))
|
9
|
+
```
|
4
10
|
|
5
11
|
```python
|
6
12
|
test = [["a", 102], ["b", 2022], ["c", 23302], ["d", 4502], ["e", 5022], ["f", 1602],]
|
@@ -8,11 +14,9 @@
|
|
8
14
|
print(all(t[1] != 5000 for t in test))
|
9
15
|
```
|
10
16
|
|
11
|
-
mapを使ってもいいかと思います。
|
12
|
-
|
13
17
|
```python
|
14
18
|
test = [["a", 102], ["b", 2022], ["c", 23302], ["d", 4502], ["e", 5022], ["f", 1602],]
|
15
19
|
|
16
|
-
print(5000
|
20
|
+
print(not any(t[1] == 5000 for t in test))
|
17
21
|
```
|
18
22
|
|
9
バグ修正
test
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
```python
|
6
6
|
test = [["a", 102], ["b", 2022], ["c", 23302], ["d", 4502], ["e", 5022], ["f", 1602],]
|
7
7
|
|
8
|
-
print(a
|
8
|
+
print(all(t[1] != 5000 for t in test))
|
9
9
|
```
|
10
10
|
|
11
11
|
mapを使ってもいいかと思います。
|
8
質問に合わせて not in に変更
test
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
```python
|
6
6
|
test = [["a", 102], ["b", 2022], ["c", 23302], ["d", 4502], ["e", 5022], ["f", 1602],]
|
7
7
|
|
8
|
-
print(any(t[1] =
|
8
|
+
print(any(t[1] != 5000 for t in test))
|
9
9
|
```
|
10
10
|
|
11
11
|
mapを使ってもいいかと思います。
|
@@ -13,6 +13,6 @@
|
|
13
13
|
```python
|
14
14
|
test = [["a", 102], ["b", 2022], ["c", 23302], ["d", 4502], ["e", 5022], ["f", 1602],]
|
15
15
|
|
16
|
-
print(5000 in map(lambda t: t[1], test))
|
16
|
+
print(5000 not in map(lambda t: t[1], test))
|
17
17
|
```
|
18
18
|
|
7
mapを使う方法を追記
test
CHANGED
@@ -8,11 +8,11 @@
|
|
8
8
|
print(any(t[1] == 5000 for t in test))
|
9
9
|
```
|
10
10
|
|
11
|
-
|
11
|
+
mapを使ってもいいかと思います。
|
12
12
|
|
13
13
|
```python
|
14
14
|
test = [["a", 102], ["b", 2022], ["c", 23302], ["d", 4502], ["e", 5022], ["f", 1602],]
|
15
15
|
|
16
|
-
print(
|
16
|
+
print(5000 in map(lambda t: t[1], test))
|
17
17
|
```
|
18
18
|
|
6
比較修正
test
CHANGED
@@ -5,7 +5,7 @@
|
|
5
5
|
```python
|
6
6
|
test = [["a", 102], ["b", 2022], ["c", 23302], ["d", 4502], ["e", 5022], ["f", 1602],]
|
7
7
|
|
8
|
-
print(any(t[1]
|
8
|
+
print(any(t[1] == 5000 for t in test))
|
9
9
|
```
|
10
10
|
|
11
11
|
あるいは
|
@@ -13,6 +13,6 @@
|
|
13
13
|
```python
|
14
14
|
test = [["a", 102], ["b", 2022], ["c", 23302], ["d", 4502], ["e", 5022], ["f", 1602],]
|
15
15
|
|
16
|
-
print(any(v
|
16
|
+
print(any(v == 5000 for k, v in test))
|
17
17
|
```
|
18
18
|
|
5
コードブロックの書き方修正
test
CHANGED
@@ -11,10 +11,8 @@
|
|
11
11
|
あるいは
|
12
12
|
|
13
13
|
```python
|
14
|
-
```python
|
15
14
|
test = [["a", 102], ["b", 2022], ["c", 23302], ["d", 4502], ["e", 5022], ["f", 1602],]
|
16
15
|
|
17
16
|
print(any(v in (102, 2022, 23302, 4502, 5022, 1602) for k, v in test))
|
18
17
|
```
|
19
|
-
```
|
20
18
|
|
4
リストのまま処理するコードも併記
test
CHANGED
@@ -5,6 +5,16 @@
|
|
5
5
|
```python
|
6
6
|
test = [["a", 102], ["b", 2022], ["c", 23302], ["d", 4502], ["e", 5022], ["f", 1602],]
|
7
7
|
|
8
|
+
print(any(t[1] in (102, 2022, 23302, 4502, 5022, 1602) for t in test))
|
9
|
+
```
|
10
|
+
|
11
|
+
あるいは
|
12
|
+
|
13
|
+
```python
|
14
|
+
```python
|
15
|
+
test = [["a", 102], ["b", 2022], ["c", 23302], ["d", 4502], ["e", 5022], ["f", 1602],]
|
16
|
+
|
8
17
|
print(any(v in (102, 2022, 23302, 4502, 5022, 1602) for k, v in test))
|
9
18
|
```
|
19
|
+
```
|
10
20
|
|
3
リスト展開するように変更
test
CHANGED
@@ -5,6 +5,6 @@
|
|
5
5
|
```python
|
6
6
|
test = [["a", 102], ["b", 2022], ["c", 23302], ["d", 4502], ["e", 5022], ["f", 1602],]
|
7
7
|
|
8
|
-
print(any(
|
8
|
+
print(any(v in (102, 2022, 23302, 4502, 5022, 1602) for k, v in test))
|
9
9
|
```
|
10
10
|
|
2
説明補足
test
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
> for文等を使って一つ一つ取り出して確認する方法は時間がかかりすぎるのとコードが増えて見辛くなるので
|
2
2
|
|
3
|
-
愚直にループするしかないと思いますけど、anyやallにジェネレータ式を渡せば、見つかった時点で処理を終了するので多少は速いです。
|
3
|
+
愚直にループするしかないと思いますけど、anyやallにジェネレータ式を渡せば、ひとつ見つかった時点で処理を終了するので多少は速いです。
|
4
4
|
|
5
5
|
```python
|
6
6
|
test = [["a", 102], ["b", 2022], ["c", 23302], ["d", 4502], ["e", 5022], ["f", 1602],]
|
1
説明追記
test
CHANGED
@@ -1,3 +1,7 @@
|
|
1
|
+
> for文等を使って一つ一つ取り出して確認する方法は時間がかかりすぎるのとコードが増えて見辛くなるので
|
2
|
+
|
3
|
+
愚直にループするしかないと思いますけど、anyやallにジェネレータ式を渡せば、見つかった時点で処理を終了するので多少は速いです。
|
4
|
+
|
1
5
|
```python
|
2
6
|
test = [["a", 102], ["b", 2022], ["c", 23302], ["d", 4502], ["e", 5022], ["f", 1602],]
|
3
7
|
|