回答編集履歴

3

追記

2018/10/12 07:50

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -13,6 +13,14 @@
13
13
  >>>
14
14
 
15
15
  >>> c = list(chain.from_iterable(zip(a, b)))
16
+
17
+ >>> c
18
+
19
+ ['1', 'a', '2', 'b', '3', 'c']
20
+
21
+ >>>
22
+
23
+ >>> c = list(chain(*zip(a, b)))
16
24
 
17
25
  >>> c
18
26
 

2

実行例の変更

2018/10/12 07:50

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -6,11 +6,17 @@
6
6
 
7
7
  >>>
8
8
 
9
+ >>> a = list('123')
10
+
11
+ >>> b = list('abc')
12
+
13
+ >>>
14
+
9
15
  >>> c = list(chain.from_iterable(zip(a, b)))
10
16
 
11
17
  >>> c
12
18
 
13
- [1, 2, 3, 4]
19
+ ['1', 'a', '2', 'b', '3', 'c']
14
20
 
15
21
  ```
16
22
 
@@ -24,9 +30,9 @@
24
30
 
25
31
  >>>
26
32
 
27
- >>> a = [1, 3, 5]
33
+ >>> a = list('123')
28
34
 
29
- >>> b = [2, 4, 6]
35
+ >>> b = list('abc')
30
36
 
31
37
  >>>
32
38
 
@@ -34,6 +40,6 @@
34
40
 
35
41
  >>> c
36
42
 
37
- [1, 2, 3, 4, 5, 6]
43
+ ['1', 'a', '2', 'b', '3', 'c']
38
44
 
39
45
  ```

1

追記

2018/10/12 07:49

投稿

LouiS0616
LouiS0616

スコア35660

test CHANGED
@@ -13,3 +13,27 @@
13
13
  [1, 2, 3, 4]
14
14
 
15
15
  ```
16
+
17
+
18
+
19
+ あるいはサードパーティの [more_itertools.interleave](https://more-itertools.readthedocs.io/en/stable/api.html#more_itertools.interleave) を使います。
20
+
21
+ ```Python
22
+
23
+ >>> import more_itertools
24
+
25
+ >>>
26
+
27
+ >>> a = [1, 3, 5]
28
+
29
+ >>> b = [2, 4, 6]
30
+
31
+ >>>
32
+
33
+ >>> c = list(more_itertools.interleave(a, b))
34
+
35
+ >>> c
36
+
37
+ [1, 2, 3, 4, 5, 6]
38
+
39
+ ```