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

質問編集履歴

23

変更

2019/10/30 04:11

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -62,7 +62,7 @@
62
62
  d['Id']['type'] = 'Integer'
63
63
 
64
64
  # 結果
65
- {'customerId': {'value': '4444', 'type': 'Integer'}}
65
+ {'Id': {'value': '4444', 'type': 'Integer'}}
66
66
  ```
67
67
 
68
68
 

22

変更

2019/10/30 04:11

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -32,20 +32,23 @@
32
32
  [Pythonでネストされたdictをどのように作成しますか?](https://codeday.me/jp/qa/20181219/79817.html)
33
33
  [ネストした辞書の初期化・更新・一覧・JSON保存をまとめておく/Python3(備忘)](https://arakan-pgm-ai.hatenablog.com/entry/2018/01/24/080000)
34
34
 
35
- 動確してないコードです。
35
+ isdigit()で落ちるコード
36
36
  --
37
37
  ```Python
38
38
  data = {}
39
39
  # {'Id': {'value': '4444', 'type': 'Integer'}}の形を作る
40
- for k,v in data.items():
40
+ for k,v in camel_data.items():
41
+ data[k] = {}
41
- data['{k}'] = {}
42
+ data[k]['value'] = v
42
- data['{k}']['value'] = '{v}'
43
+ # 数値化文字列かの判定
43
- if v.isdigit():
44
+ if v.isdigit():
44
- data['{k}']['type'] = 'Integer'
45
+ data[k]['type'] = 'Integer'
45
- else:
46
+ else:
46
- data['{k}']['type'] = 'String'
47
+ data[k]['type'] = 'String'
47
- # variablesで囲みたい
48
+ # variablesで囲
49
+ v = {}
48
- v = {"variables":{}}
50
+ v['variables'] = {}
51
+ v['variables'] = data
49
52
  ```
50
53
 
51
54
  備考

21

変更

2019/10/30 03:49

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -1,6 +1,7 @@
1
1
  現状のdict形式をネストした状態と固定値を追加した状態に変更したいです。
2
2
 
3
3
  下記の状態の辞書(dict)があります。
4
+ ※Idやtextの、値が変動いたします。また、Idがない場合やtextがない場合があります。
4
5
  `{"Id": 4444, "text": "string"}`
5
6
  ```
6
7
  {

20

変更

2019/10/29 11:07

投稿

s_akira
s_akira

スコア15

title CHANGED
@@ -1,1 +1,1 @@
1
- 入れ子型辞書に変更する
1
+ 入れ子型辞書に変更する方法
body CHANGED
File without changes

19

変更

2019/10/29 10:27

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -31,7 +31,7 @@
31
31
  [Pythonでネストされたdictをどのように作成しますか?](https://codeday.me/jp/qa/20181219/79817.html)
32
32
  [ネストした辞書の初期化・更新・一覧・JSON保存をまとめておく/Python3(備忘)](https://arakan-pgm-ai.hatenablog.com/entry/2018/01/24/080000)
33
33
 
34
- ないコードを念のため載せます。
34
+ 確してないコードす。
35
35
  --
36
36
  ```Python
37
37
  data = {}

18

追記

2019/10/29 10:25

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -31,6 +31,22 @@
31
31
  [Pythonでネストされたdictをどのように作成しますか?](https://codeday.me/jp/qa/20181219/79817.html)
32
32
  [ネストした辞書の初期化・更新・一覧・JSON保存をまとめておく/Python3(備忘)](https://arakan-pgm-ai.hatenablog.com/entry/2018/01/24/080000)
33
33
 
34
+ 動かないコードを念のため載せます。
35
+ --
36
+ ```Python
37
+ data = {}
38
+ # {'Id': {'value': '4444', 'type': 'Integer'}}の形を作る
39
+ for k,v in data.items():
40
+ data['{k}'] = {}
41
+ data['{k}']['value'] = '{v}'
42
+ if v.isdigit():
43
+ data['{k}']['type'] = 'Integer'
44
+ else:
45
+ data['{k}']['type'] = 'String'
46
+ # variablesで囲みたい
47
+ v = {"variables":{}}
48
+ ```
49
+
34
50
  備考
35
51
  --
36
52
 

17

追記

2019/10/29 10:25

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -26,7 +26,15 @@
26
26
  }
27
27
  ```
28
28
 
29
+ 参考URL
30
+ --
31
+ [Pythonでネストされたdictをどのように作成しますか?](https://codeday.me/jp/qa/20181219/79817.html)
32
+ [ネストした辞書の初期化・更新・一覧・JSON保存をまとめておく/Python3(備忘)](https://arakan-pgm-ai.hatenablog.com/entry/2018/01/24/080000)
33
+
34
+ 備考
35
+ --
36
+
29
- `{'Id': {'value': '4444', 'type': 'Integer'}}`を直接作する方法は下記だとわかりました。
37
+ `{'Id': {'value': '4444', 'type': 'Integer'}}`を直接作する方法・・・
30
38
  ```Python
31
39
  d = {}
32
40
  d['Id'] = {}
@@ -38,10 +46,4 @@
38
46
  ```
39
47
 
40
48
 
41
- 参考URL
42
- --
43
- [Pythonでネストされたdictをどのように作成しますか?](https://codeday.me/jp/qa/20181219/79817.html)
44
- [ネストした辞書の初期化・更新・一覧・JSON保存をまとめておく/Python3(備忘)](https://arakan-pgm-ai.hatenablog.com/entry/2018/01/24/080000)
45
-
46
-
47
49
  やり方がわからず混乱してしまっていて困っています。。

16

数値変更

2019/10/29 09:26

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -30,11 +30,11 @@
30
30
  ```Python
31
31
  d = {}
32
32
  d['Id'] = {}
33
- d['Id']['value'] = '777'
33
+ d['Id']['value'] = '4444'
34
34
  d['Id']['type'] = 'Integer'
35
35
 
36
36
  # 結果
37
- {'customerId': {'value': '777', 'type': 'Integer'}}
37
+ {'customerId': {'value': '4444', 'type': 'Integer'}}
38
38
  ```
39
39
 
40
40
 

15

追記

2019/10/29 09:24

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -26,14 +26,15 @@
26
26
  }
27
27
  ```
28
28
 
29
- 以下参考にPythonを書き換えておりま
29
+ `{'Id': {'value': '4444', 'type': 'Integer'}}`直接操作する方法は下記だとわかりました
30
30
  ```Python
31
+ d = {}
31
- import collections
32
+ d['Id'] = {}
32
- d = collections.defaultdict(dict)
33
- d['dict1']['innerkey'] = 'value'
33
+ d['Id']['value'] = '777'
34
+ d['Id']['type'] = 'Integer'
34
35
 
35
36
  # 結果
36
- {'dict1': {'key': 'value'}}
37
+ {'customerId': {'value': '777', 'type': 'Integer'}}
37
38
  ```
38
39
 
39
40
 

14

変更

2019/10/29 09:23

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -43,4 +43,4 @@
43
43
  [ネストした辞書の初期化・更新・一覧・JSON保存をまとめておく/Python3(備忘)](https://arakan-pgm-ai.hatenablog.com/entry/2018/01/24/080000)
44
44
 
45
45
 
46
- やり方がわからないのとやり方に混乱してしまっていて困っています。。
46
+ やり方がわから混乱してしまっていて困っています。。

13

変更

2019/10/29 09:01

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -1,7 +1,7 @@
1
1
  現状のdict形式をネストした状態と固定値を追加した状態に変更したいです。
2
2
 
3
3
  下記の状態の辞書(dict)があります。
4
- `{"Id": 4444, "sId": 4, "text": "string"}`
4
+ `{"Id": 4444, "text": "string"}`
5
5
  ```
6
6
  {
7
7
  "Id": 4444,

12

変更

2019/10/29 08:59

投稿

s_akira
s_akira

スコア15

title CHANGED
@@ -1,1 +1,1 @@
1
- 辞書(入れ子型)を作成する
1
+ 入れ子型辞書に変更する
body CHANGED
File without changes

11

変更

2019/10/29 08:58

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -19,7 +19,7 @@
19
19
  "type": "Integer"
20
20
  },
21
21
  "text": {
22
- "value": "string",
22
+ "value": "あああ",
23
23
  "type": "String"
24
24
  }
25
25
  }

10

変更

2019/10/29 08:55

投稿

s_akira
s_akira

スコア15

title CHANGED
@@ -1,1 +1,1 @@
1
- 【Python】Dict形式を作成/変更する(入れ子型辞書の作成)
1
+ 辞書(入れ子型)を作成する
body CHANGED
@@ -1,18 +1,15 @@
1
1
  現状のdict形式をネストした状態と固定値を追加した状態に変更したいです。
2
- 実現方法のイメージとして、
3
- dictフォーマット`{'variables': {'Id': {'value':'444', 'type':'Integer'}}`を作成し、for文で値を渡していくイメージでいます。
4
2
 
5
3
  下記の状態の辞書(dict)があります。
6
4
  `{"Id": 4444, "sId": 4, "text": "string"}`
7
5
  ```
8
6
  {
9
7
  "Id": 4444,
10
- "sId": 4,
11
8
  "text": "string"
12
9
  }
13
10
  ```
14
11
  下記へ変更したいです。
15
- `{"variables": {"Id": {"value": "4444","type": "Integer"},"sId": { "value": "4","type": "Integer"},"text": {"value": "string","type": "String"}}}`
12
+ `{"variables": {"Id": {"value": "4444","type": "Integer"},"text": {"value": "string","type": "String"}}}`
16
13
  固定値:variables/value/type
17
14
  ```
18
15
  {
@@ -21,10 +18,6 @@
21
18
  "value": "4444",
22
19
  "type": "Integer"
23
20
  },
24
- "sId": {
25
- "value": "4",
26
- "type": "Integer"
27
- },
28
21
  "text": {
29
22
  "value": "string",
30
23
  "type": "String"
@@ -33,22 +26,8 @@
33
26
  }
34
27
  ```
35
28
 
36
- 途中コード
29
+ 以下を参考にPythonを書き換えております。
37
- --
38
30
  ```Python
39
- data = {"Id": 4444, "sId": 4, "text": "string"}
40
- test_data = {}
41
- for row in dict:
42
- test_data[Id] = {}
43
- for k,v in enumerate(row):
44
- test_data[variables] = {}
45
- for k,v in enumerate(row):
46
- # ここの記載方法わからず困っています。
47
- ```
48
-
49
-
50
- 以下を参考に書き換えております。
51
- ```Python
52
31
  import collections
53
32
  d = collections.defaultdict(dict)
54
33
  d['dict1']['innerkey'] = 'value'

9

追記

2019/10/29 08:55

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -3,6 +3,7 @@
3
3
  dictフォーマット`{'variables': {'Id': {'value':'444', 'type':'Integer'}}`を作成し、for文で値を渡していくイメージでいます。
4
4
 
5
5
  下記の状態の辞書(dict)があります。
6
+ `{"Id": 4444, "sId": 4, "text": "string"}`
6
7
  ```
7
8
  {
8
9
  "Id": 4444,
@@ -11,6 +12,7 @@
11
12
  }
12
13
  ```
13
14
  下記へ変更したいです。
15
+ `{"variables": {"Id": {"value": "4444","type": "Integer"},"sId": { "value": "4","type": "Integer"},"text": {"value": "string","type": "String"}}}`
14
16
  固定値:variables/value/type
15
17
  ```
16
18
  {

8

変更

2019/10/29 08:46

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -2,7 +2,7 @@
2
2
  実現方法のイメージとして、
3
3
  dictフォーマット`{'variables': {'Id': {'value':'444', 'type':'Integer'}}`を作成し、for文で値を渡していくイメージでいます。
4
4
 
5
- 下記の状態のdicがあります。
5
+ 下記の状態の辞書(dict)があります。
6
6
  ```
7
7
  {
8
8
  "Id": 4444,

7

文言変更

2019/10/29 08:11

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -62,4 +62,4 @@
62
62
  [ネストした辞書の初期化・更新・一覧・JSON保存をまとめておく/Python3(備忘)](https://arakan-pgm-ai.hatenablog.com/entry/2018/01/24/080000)
63
63
 
64
64
 
65
- 申し訳ないのですが、教えていただければ幸す。
65
+ やり方がわからないのとやり方に混乱ししまってて困ってす。

6

変更

2019/10/29 07:07

投稿

s_akira
s_akira

スコア15

title CHANGED
@@ -1,1 +1,1 @@
1
- 【Python】Dict形式を作成/変更する(入れ子型辞書)
1
+ 【Python】Dict形式を作成/変更する(入れ子型辞書の作成)
body CHANGED
File without changes

5

変更

2019/10/29 06:47

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -47,11 +47,9 @@
47
47
 
48
48
  以下を参考に書き換えております。
49
49
  ```Python
50
- d = {}
51
- for row in file_map:
50
+ import collections
52
- d[row_key] = {}
53
- for idx, col in enumerate(row):
51
+ d = collections.defaultdict(dict)
54
- d[row_key][idx] = col
52
+ d['dict1']['innerkey'] = 'value'
55
53
 
56
54
  # 結果
57
55
  {'dict1': {'key': 'value'}}

4

タイトル変更

2019/10/29 06:44

投稿

s_akira
s_akira

スコア15

title CHANGED
@@ -1,1 +1,1 @@
1
- 【Python】Dict形式を作成/変更する
1
+ 【Python】Dict形式を作成/変更する(入れ子型辞書)
body CHANGED
File without changes

3

文言追加

2019/10/29 06:39

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -1,5 +1,6 @@
1
1
  現状のdict形式をネストした状態と固定値を追加した状態に変更したいです。
2
+ 実現方法のイメージとして、
2
- 実現方法として、dictフォーマットを作成し、for文で値を渡していくイメージでいます。
3
+ dictフォーマット`{'variables': {'Id': {'value':'444', 'type':'Integer'}}`を作成し、for文で値を渡していくイメージでいます。
3
4
 
4
5
  下記の状態のdicがあります。
5
6
  ```

2

修正

2019/10/29 06:32

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -18,7 +18,7 @@
18
18
  "value": "4444",
19
19
  "type": "Integer"
20
20
  },
21
- "contactTypeId": {
21
+ "sId": {
22
22
  "value": "4",
23
23
  "type": "Integer"
24
24
  },

1

文言変更

2019/10/29 06:25

投稿

s_akira
s_akira

スコア15

title CHANGED
File without changes
body CHANGED
@@ -1,5 +1,5 @@
1
1
  現状のdict形式をネストした状態と固定値を追加した状態に変更したいです。
2
- 実現方法として、dictフォーマットを作成して、変動値を変数で渡していくイメージでいます。
2
+ 実現方法として、dictフォーマットを作成して、for文で値を渡していくイメージでいます。
3
3
 
4
4
  下記の状態のdicがあります。
5
5
  ```