python+flask開發小白第二天

來源:互聯網
上載者:User

標籤:cxf   這一   參數   bootstrap   點擊   bat   講解   理解   comment   

使用VSCode編譯python web頁面

1.先從最基礎的說起吧,關於VSCode的使用: 
運行python程式與運行java,c,c++程式一樣,需要建立一個檔案,第一個檔案建議不要建立在本地的C盤,不方便尋找,檔案路徑也會一不小心很繁瑣,為之後的開發帶來不便! 
第一段代碼是從https://dormousehole.readthedocs.io/en/latest/中的快速上手一文中get到的,所以建的檔案名稱和裡面的一致,方便理解,檔案夾放在d盤中 名字叫做app.py,”.py”是python檔案的統一副檔名,前面app所在位置建議用有意義的英文命名,不要用flask ,這會與flask本身衝突 
開啟VScode,點擊檔案,開啟app.py檔案 
運行下面的代碼 同樣是最簡單的helloworld:

from flask import Flaskapp = Flask(__name__)@app.route(‘/‘)def hello_world():    return ‘Hello World!‘if __name__ == ‘__main__‘:    app.run()

要注意書寫,因為python是嚴格規範縮排的,以及底線,name和main前後都是雙底線的, 
“from flask import Flask”首先我們匯入了 Flask 類。這個類的執行個體將會成為我們的 WSGI 應用。(WSGI:Web伺服器 網關介面(Python Web Server Gateway Interface,縮寫為WSGI)是Python應用程式或架構和Web伺服器之間的一種介面) 
接著我們建立了這個類的執行個體。第一個參數是應用模組或者包的名稱。如果你使用一個 單一模組(就像本例),那麼應當使用 _ name _ ,因為名稱會根據這個模組是按 應用方式使用還是作為一個模組匯入而發生變化(可能是 ‘_ main _’ ,也可能是 實際匯入的名稱)。這個參數是必需的,這樣 Flask 就可以知道在哪裡找到模板和靜態檔案等東西。 
接著我們使用root()裝飾器來告訴Flask出發函數的URL; 
“def”用來定義後面的hello_world函數 函數名稱可用於產生相關聯的 URL ,並返回需要在使用者瀏覽器中顯示的資訊(return ‘hello world!’) 
最後使用run()來運行伺服器和我們的本地應用 
“if _ name =’ main _’ ”這一句是確保伺服器只會在Python解譯器下運行,而不會作為模組匯入時運行; 
最後啟動並執行時候開啟cygwin中的.bat 雙擊運行後輸入以下命令: 
source pyvenv/bin/activate(按下enter鍵):venv是我們建立的一個獨立的python運行環境 可以用source進入這個環境 
cd /cygdrive/d/app.py(cygdrive後的是建立的包所在的位置/x/xxx.xx 輸完繼續按下enter鍵):cd是change directory(更改目錄)的英文縮寫。它的功能是更改當前的工作目錄,cygdrive/d的意思是你的windows下的整個D盤被cygwin掛載成/cygdrive/d的意思 
python3 app.py(按下enter鍵) 
運行正確後悔出現一行英文 中有一段連結 點擊複製 粘貼在我們的瀏覽器的網址欄上 就會出現我們想要的 Hello World這句英文。 
2.幾個有用的連結: 
1. PEP8 Python 編碼規範:https://www.douban.com/note/134971609/ 
2. Flask 學著用模板:http://blog.csdn.net/bestallen/article/details/52055061 
另外開啟VSCode後 點擊檔案—喜好設定—鍵盤快速鍵會有一個很長很全的常用編譯器快速鍵,比如ctrl+s是儲存 ;ctrl+z是返回上一步 ; 
3.用python做一個簡單的web頁面: 
需要一個bootstrap的包 裡面含有三個檔案夾: 
 
和一個jQuery的.js檔案 
在我們在d盤中建的app.py檔案夾中建一個名稱為static 的檔案夾,內層建一個叫bootstrap的檔案夾 把準備好的bootstrap中 三個檔案夾和jQuery的檔案放進去 , 
 
像這樣 我們就可以在VScode中看見這幾個檔案了, 
接著我們在app.py中運行下面的代碼:

from flask import Flask,render_templateapp = Flask(__name__)@app.route(‘/‘)def index():    return render_template(‘login.html‘,name=‘123‘)@app.route(‘/abc‘)def login():    return ‘hey‘if __name__ == ‘__main__‘:    app.run()

render_template是一個模板 相當於我們的數學公式 這是一個已經在python庫中已經存在的模板 我們調用即可 作用是可以在我們的python中 加入更多的我們想要輸出的東西而不需要一個一個的來return;說白了,其實render_template的功能是對先引入index.html,同時根據後面傳入的參數,對html進行修改渲染。 
關於@app.route及其他的裝飾器 這個文章中有詳細的講解;http://python.jobbole.com/80956/ 
我們需要我們的python運行出來的頁面更漂亮!這時就用到了我們python中的template模板 它是一個可以用來製作web頁面的模板; 
我們首先在我們的app.py檔案夾下建立一個叫templates的檔案,在這個檔案下建立一個叫login 的HTML檔案,開始我們的web頁面編寫,

<!DOCTYPE html><html><head>    <meta charset="utf-8" />    <meta http-equiv="X-UA-Compatible" content="IE=edge">    <title>Page Title</title>    <meta name="viewport" content="width=device-width, initial-scale=1"><title>Bootstrap 101 Template</title><!-- Bootstrap --><link href="/static/bootstrap/css/bootstrap.min.css" rel="stylesheet"><!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries --><!-- WARNING: Respond.js doesn‘t work if you view the page via file:// --><!--[if lt IE 9]>  <script src="https://cdn.bootcss.com/html5shiv/3.7.3/html5shiv.min.js"></script>  <script src="https://cdn.bootcss.com/respond.js/1.4.2/respond.min.js"></script><![endif]--></head><body><!-- jQuery (necessary for Bootstrap‘s JavaScript plugins) --><script src="/static/bootstrap/jquery-1.12.4.js"></script><!-- Include all compiled plugins (below), or include individual files as needed --><script src="/static/bootstrap/js/bootstrap.min.js"></script><body bgcolor="#EEE5DE><div class="container">    <div class="now">        <div class="cd-md-4">            <div class="panel panel-danger">                <div class="panel-body"><marquee><b><font color="#EE6AA7"><h3>您好,請登入!</h3></font></b> </marquee>  <!--走馬燈效果-->                </div>            </div>        </div>    </div></div><form class="text-center">    NAME:<input type="text" name="name">    <br/>      PASSWORD:<input tupe="password" name="password"></form></body></html>

點擊ctrl+s儲存後使用cygwin的.bat運行 出現網址後粘貼到網址欄就可以了 上面的代碼是一個非常簡單的含有一個邊框 一串走馬燈特效的文字 以及表格組成的登入頁面 
扔兩個有趣實用的連結: 
https://www.cnblogs.com/zendu/p/4991090.html 
http://www.114la.com/other/rgb.htm 
今天就學到這麼多 不寫了 腰疼·········································

python+flask開發小白第二天

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.