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

回答編集履歴

3

追記

2018/01/01 08:30

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -4,8 +4,24 @@
4
4
  datum['Id'] = int(datum['Id'])
5
5
  ```
6
6
 
7
+ ---
7
8
  むしろmapや内包表記を使うのはこの場合書きづらいだけかと。
9
+ ```Python
10
+ data = list(map(lambda d: {k: int(v) if k == 'Id' else v for k, v in d.items()}, data))
11
+ ```
8
12
 
13
+ あるいは
14
+ ```Python
15
+ def can_cast_to_int(arg):
16
+ try:
17
+ int(arg)
18
+ return True
19
+ except ValueError:
20
+ return False
21
+
22
+ data = list(map(lambda d: {k: int(v) if can_cast_to_int(v) else v for k, v in d.items()}, data))
23
+ ```
24
+
9
25
  ---
10
26
  > 辞書型のリスト(この言い方も合っているのでしょうか?
11
27
 

2

追記

2018/01/01 08:30

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -4,4 +4,10 @@
4
4
  datum['Id'] = int(datum['Id'])
5
5
  ```
6
6
 
7
- むしろmapや内包表記を使うのはこの場合書きづらいだけかと。
7
+ むしろmapや内包表記を使うのはこの場合書きづらいだけかと。
8
+
9
+ ---
10
+ > 辞書型のリスト(この言い方も合っているのでしょうか?
11
+
12
+ 正しい表現かと思います。
13
+ 『同じキーを持つ複数の辞書を要素とするリスト』というと誤解がないですが、煩雑な感がありますね。

1

追記

2018/01/01 08:25

投稿

LouiS0616
LouiS0616

スコア35678

answer CHANGED
@@ -2,4 +2,6 @@
2
2
  ```Python
3
3
  for datum in data:
4
4
  datum['Id'] = int(datum['Id'])
5
- ```
5
+ ```
6
+
7
+ むしろmapや内包表記を使うのはこの場合書きづらいだけかと。