質問編集履歴

6

修正

2019/01/15 01:43

投稿

TanakashiXr
TanakashiXr

スコア57

test CHANGED
File without changes
test CHANGED
@@ -282,18 +282,18 @@
282
282
 
283
283
  loginsetting = json.load(f)
284
284
 
285
- loset = loginsetting[loginmid]
285
+ print(loginsetting[loginmid])
286
-
286
+
287
- if loset == 1:
287
+ if loginsetting[loginmid] == 1:
288
-
288
+
289
- pass
289
+ pass
290
-
290
+
291
- if loset == 2: #ここ
291
+ if loginsetting[loginmid] == 2:
292
-
292
+
293
- pass
293
+ pass
294
-
294
+
295
- if loset == 3:
295
+ if loginsetting[loginmid] == 3:
296
-
296
+
297
- pass
297
+ pass
298
-
298
+
299
- ```
299
+ ```

5

修正

2019/01/15 01:43

投稿

TanakashiXr
TanakashiXr

スコア57

test CHANGED
File without changes
test CHANGED
@@ -254,6 +254,8 @@
254
254
 
255
255
  "mid3": 1,
256
256
 
257
+ "mid4": 1
258
+
257
259
  }
258
260
 
259
261
  ```

4

誤字の修正

2019/01/15 01:40

投稿

TanakashiXr
TanakashiXr

スコア57

test CHANGED
File without changes
test CHANGED
@@ -234,6 +234,8 @@
234
234
 
235
235
  ```loginsetting
236
236
 
237
+ {
238
+
237
239
  "mid1": 1,
238
240
 
239
241
  "mid2": [
@@ -252,7 +254,7 @@
252
254
 
253
255
  "mid3": 1,
254
256
 
255
-
257
+ }
256
258
 
257
259
  ```
258
260
 

3

詳細の追加

2019/01/15 01:32

投稿

TanakashiXr
TanakashiXr

スコア57

test CHANGED
File without changes
test CHANGED
@@ -230,6 +230,42 @@
230
230
 
231
231
 
232
232
 
233
+
234
+
235
+ ```loginsetting
236
+
237
+ "mid1": 1,
238
+
239
+ "mid2": [
240
+
241
+ 2,
242
+
243
+ [
244
+
245
+ "mail",
246
+
247
+ "password"
248
+
249
+ ]
250
+
251
+ ],
252
+
253
+ "mid3": 1,
254
+
255
+
256
+
257
+ ```
258
+
259
+
260
+
261
+ ```loginmid
262
+
263
+ mid2
264
+
265
+ ```
266
+
267
+
268
+
233
269
  ```
234
270
 
235
271
  fin = open('loginmid.txt')

2

修正

2019/01/15 01:27

投稿

TanakashiXr
TanakashiXr

スコア57

test CHANGED
File without changes
test CHANGED
@@ -127,3 +127,133 @@
127
127
 
128
128
 
129
129
  どなたか、原因の分かる方いらっしゃればご教授お願いします
130
+
131
+
132
+
133
+ ### その後。。。
134
+
135
+ 回答をいただき、二通りのことを考えました。
136
+
137
+
138
+
139
+ > まず、jsonへの記載の仕方を変える方法です。
140
+
141
+
142
+
143
+ こちら試して見たところ、文字列とリストを合わせることができずエラーが発生しました。
144
+
145
+
146
+
147
+ **エラー**
148
+
149
+ ```
150
+
151
+ [ ERROR ] list indices must be integers or slices, not str
152
+
153
+ ```
154
+
155
+
156
+
157
+ **理想**
158
+
159
+ ```
160
+
161
+ {
162
+
163
+ "mid":{
164
+
165
+ "number": 1
166
+
167
+ }
168
+
169
+ "mid":{
170
+
171
+ "number": 2,
172
+
173
+ "mail": "mail",
174
+
175
+ "password": "password"
176
+
177
+ }
178
+
179
+ "mid":{
180
+
181
+ "number": 1
182
+
183
+ }
184
+
185
+ }
186
+
187
+ ```
188
+
189
+
190
+
191
+ **該当のソースコード**
192
+
193
+ ```ここに言語名を入力
194
+
195
+ f=codecs.open('loginsetting.json','r','utf-8')
196
+
197
+ loginsetting = json.load(f)
198
+
199
+ sender = mid
200
+
201
+ msg.text = "2 mail password"
202
+
203
+ zz = msg.text.replace("2 ","")
204
+
205
+ ll = zz.split(" ")
206
+
207
+ mail = ll[0]
208
+
209
+ pas = ll[1]
210
+
211
+ loginsetting[sender]["number"] = 2
212
+
213
+ loginsetting[sender]["mail"] = mail
214
+
215
+ loginsetting[sender]["password"] = pas
216
+
217
+ f=codecs.open('loginsetting.json','w','utf-8')
218
+
219
+ json.dump(loginsetting, f, sort_keys=True, indent=4,ensure_ascii=False)
220
+
221
+ ```
222
+
223
+
224
+
225
+ > そして次に回答に頂いた、現在に相応した判定方法に変えるやり方です
226
+
227
+
228
+
229
+ loset値が2だった場合の判定方法を分からず、悩んでおります。
230
+
231
+
232
+
233
+ ```
234
+
235
+ fin = open('loginmid.txt')
236
+
237
+ loginmid = fin.read()
238
+
239
+ fin.close()
240
+
241
+ f=codecs.open('loginsetting.json','r','utf-8')
242
+
243
+ loginsetting = json.load(f)
244
+
245
+ loset = loginsetting[loginmid]
246
+
247
+ if loset == 1:
248
+
249
+ pass
250
+
251
+ if loset == 2: #ここ
252
+
253
+ pass
254
+
255
+ if loset == 3:
256
+
257
+ pass
258
+
259
+ ```

1

質問理由

2019/01/14 23:57

投稿

TanakashiXr
TanakashiXr

スコア57

test CHANGED
File without changes
test CHANGED
@@ -29,6 +29,40 @@
29
29
  "mid": 1
30
30
 
31
31
  }
32
+
33
+ ```
34
+
35
+
36
+
37
+ **追記**
38
+
39
+ 以下の別のプログラムで使用する際に不便なので、今回このような質問をさせていただきました。
40
+
41
+ ```
42
+
43
+ fin = open('loginmid.txt')
44
+
45
+ loginmid = fin.read()
46
+
47
+ fin.close()
48
+
49
+ f=codecs.open('loginsetting.json','r','utf-8')
50
+
51
+ loginsetting = json.load(f)
52
+
53
+ loset = loginsetting[loginmid]
54
+
55
+ if loset == 1:
56
+
57
+ pass
58
+
59
+ if loset == 2:
60
+
61
+ pass
62
+
63
+ if loset == 3:
64
+
65
+ pass
32
66
 
33
67
  ```
34
68