繼上次的 Hello World 後我們今天來使用 webapp2 架構來寫我們的前端程式
需要在 app.yaml 檔裡加上這幾行 官方文章傳送門
libraries: - name: webapp2 version: latest
![]() |
加入後的 app.yaml 檔案 |
接下來雲端程式就能看得懂我們的網頁標籤了
這裡我用一個簡單的輸入變數然後印出迴圈值來演示給大家看
![]() |
py檔的內容 |
![]() |
結果圖 |
其中比較需要注意的就是 Python 的縮排格式與上引號的使用方式
這種方法是 Html 語法跟 Python 寫在一起的方式
Html 程式碼一多就會顯得程式碼雜亂
還有另外一種方式是使用模板( Template )的方式可以讓兩種程式碼分開放方便管理與維護
會在後面一點教到
而這禮拜老師出的作業是可輸入變數的乘法表
只需要利用上面的例題動動腦就能做出來囉
![]() |
結果圖 |
![]() |
py檔程式範例 |
# -*- coding: utf-8 -*-
#create an N-by-M multiplication table
import webapp2
MAIN_PAGE_HTML = """\
<!DOCTYPE html>
<html>
<body>
<form action="/" method="post">
<div> N<input name="N" rows="1" cols="20"/>
M<input name="M" rows="1" cols="20"/>
<input type="submit" value="create"> </div>
"""
class MainPage(webapp2.RequestHandler):
def get(self):
self.response.write(MAIN_PAGE_HTML)
self.response.write("</form></html>")
def post(self):
self.response.write(MAIN_PAGE_HTML)
N = int(self.request.get('N'))
M = int(self.request.get('M'))
self.response.write("<br><table><tr>")
for i in range(1,N+1):
self.response.write("<td>")
for j in range(1,M+1):
self.response.write('%s x %s = %2s '%(i,j,j*i)+"<br>")
self.response.write("</td>")
self.response.write("</tr></table></form></html>")
application = webapp2.WSGIApplication([
('/', MainPage),
], debug=True)
有問題歡迎提問