質問編集履歴

3

再考のため

2020/06/30 03:47

投稿

Hironori1998
Hironori1998

スコア0

test CHANGED
@@ -1 +1 @@
1
- PYTHON 3.8で、BMIから肥満度を判別したい
1
+ PYTHONの条件分岐
test CHANGED
@@ -10,176 +10,8 @@
10
10
 
11
11
 
12
12
 
13
- ### 発生している問題・エラーメッセージ
14
-
15
-
16
-
17
- 肥満度をBMIから算出して、HTMLテンプレートに反映したい。
18
-
19
-
20
-
21
-
22
-
23
- ### 該当のソースコード
24
-
25
-
26
-
27
- ■PYTHON
28
-
29
-
30
-
31
- ```PYTHON
32
-
33
- @route('/health-bmi', 'GET')
34
-
35
- def health_bmi():
36
-
37
- '''
38
-
39
- '''
40
-
41
- app_session = request.environ.get('beaker.session')
42
-
43
- params=read_settings(app_session['account_id'])
44
-
45
- db = sqlite3.connect(FILENAME ).cursor()
46
-
47
- rows=db.execute(
48
-
49
- '''SELECT * from bmi_data WHERE account_id=? order by DATE(date)''',
50
-
51
- (params['account_id'],)
52
-
53
- ).fetchall()
54
-
55
- db.close()
56
-
57
-
58
-
59
- records=''
60
-
61
- weight_hist=''
62
-
63
- params['bmi']=''
64
-
65
- params['height']=''
66
-
67
- params['weight']=''
68
-
69
- params['latest_date']=''
70
-
71
-
72
-
73
- for row in rows:
74
-
75
- latest_bmi=str(bmi(float(row[2]),float(row[3])))
76
-
77
- date= sqlite2google(row[1])
78
-
79
- records=records+"[new Date("+date+"),25,"+latest_bmi+",22,18.5,],\n\t"
80
-
81
- weight_hist=weight_hist+"[new Date("+date+"),"+str(row[3])+",],\n\t"
82
-
83
- params['bmi']=latest_bmi
84
-
85
- params['height']=str(row[2])
86
-
87
- params['weight']=str(row[3])
88
-
89
- params['latest_date']=sqlite2fmt(row[1],'/')
90
-
91
- params['himando']=himan
92
-
93
-
94
-
95
-
96
-
97
- if len(records)>0:
98
-
99
- params["records"]=records
100
-
101
-
102
-
103
- if len(weight_hist)>0:
104
-
105
- params["weight_hist"]=weight_hist
106
-
107
-
108
-
109
- return template('./views/health-bmi.html', params)
110
-
111
-
112
-
113
- ```
114
-
115
-
116
-
117
- ■HTML
118
-
119
-
120
-
121
- <table class="table">
122
-
123
- <tr><th>測定日</th><td>{{latest_date}}</td></tr>
124
-
125
- <tr><th>体重</th><td>{{weight}}</td></tr>
126
-
127
- <tr><th>身長</th><td>{{height}} </td></tr>
128
-
129
- <tr><th>BMI</th><td>{{bmi}}</td></tr>
130
-
131
- <tr><th>肥満度</th><td>【ここに肥満度を表示したい】</td></tr>
132
-
133
- </table>
134
-
135
-
136
-
137
-
138
-
139
-
140
-
141
- ### 試したこと
142
-
143
-
144
-
145
- pramsに['himando']を追加し以下の分岐を単独で作成したが、
146
-
147
- これをどう実装していいか見当がつかない。
148
-
149
-
150
-
151
- ```PYTHON
152
-
153
-
154
-
155
- if himan < 18.5:
156
-
157
- result = "痩せ型"
158
-
159
- elif (himan >= 18.5) and (himan < 25):
160
-
161
- result = "標準体型"
162
-
163
- elif (himan >= 25) and (himan < 30):
164
-
165
- result = "肥満(軽)"
166
-
167
- else:
168
-
169
- result = "肥満(重)"
170
-
171
-
172
-
173
- ```
174
-
175
-
176
-
177
-
178
-
179
-
180
-
181
13
  ### 補足情報(FW/ツールのバージョンなど)
182
14
 
183
15
 
184
16
 
185
- PYTHON 3.8
17
+ 再考します。

2

コードとインデントを修正

2020/06/30 03:47

投稿

Hironori1998
Hironori1998

スコア0

test CHANGED
File without changes
test CHANGED
@@ -14,7 +14,7 @@
14
14
 
15
15
 
16
16
 
17
- 肥満度をHTMLテンプレートに反映すべく値をReturnしたが、エラーになる
17
+ 肥満度をBMIから算出して、HTMLテンプレートに反映した
18
18
 
19
19
 
20
20
 
@@ -142,11 +142,13 @@
142
142
 
143
143
 
144
144
 
145
- 以下の分岐を単独で作成した
145
+ pramsに['himando']を追加し以下の分岐を単独で作成したが、
146
146
 
147
- かし、上記のソースコードに埋め込むとエラーになっしま解決に辿り着けない。
147
+ これをどう実装していいか見当がつかない。
148
148
 
149
149
 
150
+
151
+ ```PYTHON
150
152
 
151
153
 
152
154
 
@@ -168,6 +170,10 @@
168
170
 
169
171
 
170
172
 
173
+ ```
174
+
175
+
176
+
171
177
 
172
178
 
173
179
 

1

コードインデントを修正

2020/06/30 01:52

投稿

Hironori1998
Hironori1998

スコア0

test CHANGED
File without changes
test CHANGED
@@ -28,11 +28,13 @@
28
28
 
29
29
 
30
30
 
31
+ ```PYTHON
32
+
33
+ @route('/health-bmi', 'GET')
34
+
31
35
  def health_bmi():
32
36
 
33
37
  '''
34
-
35
- テンプレートのhtmlにグラフ描画のデータを埋め込み
36
38
 
37
39
  '''
38
40
 
@@ -86,6 +88,10 @@
86
88
 
87
89
  params['latest_date']=sqlite2fmt(row[1],'/')
88
90
 
91
+ params['himando']=himan
92
+
93
+
94
+
89
95
 
90
96
 
91
97
  if len(records)>0:
@@ -101,6 +107,10 @@
101
107
 
102
108
 
103
109
  return template('./views/health-bmi.html', params)
110
+
111
+
112
+
113
+ ```
104
114
 
105
115
 
106
116