新手學習python,掌握的基本語法的使用,學習基本的數據類型(字符串、列表、元組、字典、集合等)、函數、數據結構等使用及理解後,後續的項目實戰離不開web開發、爬蟲、圖像處理、深度學習、人工智能等。本博客作爲學習小記,純屬簡單的python學習交流文章,如有紕漏或者錯誤,還請多多指教,感謝!
軟件基礎:
安裝PyCharm(版本2019.3) 官網鏈接:https://www.jetbrains.com/pycharm/
安裝python(版本3.7.5):https://www.python.org/downloads/
學習來源:
視頻(bilibili):https://www.bilibili.com/video/av16976018?from=search&seid=649169955504493099
https://www.bilibili.com/video/av14095837?from=search&seid=649169955504493099
https://www.bilibili.com/video/av48204232?from=search&seid=5440996610444191920
現有使用較多python的web搭建框架:Flask、Django、Tornado,當然還有bottle、web.py等(來源bilibili-Python_fullstack框架入門【老男孩IT】https://www.bilibili.com/video/av69049751?p=1)
Flask:短小精悍、內部沒有太多組件,第三方組件豐富。
Djiango:重武器,內部包含了非常多組件:ORM、Form、ModelForm 、緩存、session、中間件、信號等
Tornado:異步非阻塞框架(node.js)
----------------------------------------------------------------------------
開始搭建:
1. 打開PyCharm,新建project,命名爲setup_web,選擇空目錄,選擇默認環境Virtualenv
- 新建myapp.py(網頁後臺控制)
- 新建文件夾templates(文件名一定要是這個),在裏面新建一個index.html(網頁源代碼)
自此,項目本地目錄中就有:
2. 安裝需要的flask模塊包,在PyChram中Terminal命令行中
>> pip install flask
3. 基本的程序準備就緒,開始編輯myapp.py的代碼:
from flask import Flask
from flask import render_template #渲染
app = Flask(__name__)
@app.route('/') #主頁地址,“裝飾器”
def news():
the_news = {
'XXX1':'1',
'XXX2':'2',
'XXX3':'3',
'XXX4':'4',
}
context = {
'title':'新聞',
'the_news': the_news,
}
return render_template('index.html',context=context) #把index.html文件讀進來,再交給瀏覽器
if __name__ == '__main__':
app.run(host='0.0.0.0',debug=True,port=80) #127.0.0.1 迴路 自己返回自己
html的代碼:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>個性簽名</title>
<style>
div.wrapper {
border: 1px solid black;
height: 250px;
width: 550px;
background: white;
margin: auto;
}
div.form-div {
border: 1px solid black;
height: 50px;
width: 550px;
background: yellow;
margin: auto;
}
div.img-div {
border: 1px solid black;
height: 200px;
width: 550px;
background: white;
margin: auto;
}
</style>
</head>
<body>
<div class="wrapper">
<h4>{{context.title}}</h4>
<ul>
{% for i in context.the_news %}
<li><a href="#"><span>{{ i }}</span>{{ context.the_news[i] }}</a></li>
{% endfor %}
</ul>
<div class="form-div">
<form method="POST">
<input type="text">
<select>
<option>1</option>
<option>2</option>
</select>
<input type="submit">
</form>
</div>
<div class="img-div">
<span>新聞講究時效性</span>
</div>
</div>
</body>
<ml>
</html>
4. 運行myapp.py(右鍵點擊Run 'myapp.py'),打開瀏覽器,輸入http://localhost/或者127.0.0.1,結果如下圖所示:
---------------------------------------------------------------------------------------------------------
學習小計:
pycharm使用操作:
- 快捷鍵:ctrl+? 註釋、反註釋
html操作(菜鳥教程:https://www.runoob.com/html/html-basic.html):
- 基本的html代碼結構
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title> <!-- 兩個<title>之間的Title爲網頁打開時的提示標籤 -->
</head>
<body>
<!-- html編程的主體 -->
</body>
</html>
- 代碼認識:
<div style="" ></div> <!-- 每個網頁都由大小不一的模塊構成,div就是新建網頁框架中的模塊 -->
<span></span> <!-- 顯示文字等 -->
<font size=" " color=" " face="黑體"></font> <!-- 設置字體顏色、大小、字體等 -->
<a href=" "></a> <!-- 標籤定義超鏈接,用於從一個頁面鏈接到另一個頁面 -->
<br> <!-- 換行符 -->
<ul></ul> <!-- 標籤定義無序列表 -->
<b></b> <!-- 加粗文本 -->
< style="position:relative / absolute; <!-- 相對/絕對位置 -->
float: left / right; <!-- 靠左、右 -->
left / right: 10px; <!-- 距離左、右多少px -->
top: 25px; <!-- 距離上多少px -->
height: 300px (100%); <!-- 模塊的高 -->
width: 300px (100%); <!-- 模塊的寬 -->
background: #FFFFFF; <!-- 模塊背景顏色 -->
border: 0px solid white; <!-- 模塊邊框線顏色、大小 -->
display: flex; flex-direction: row /column; justify-content: space-around / between;
<!-- 浮動元素,橫向、縱向排列,根據窗口大小變化 -->
text-align:center /left /right; <!-- 文字位於模塊中的位置 -->
margin: auto; <!-- 自動分配元素的水平邊距 -->
">
... ...
學習總結:
- 學習python,易學難精,開源,集成了很多的模塊包,作爲小白的我,把菜鳥教程中python基礎教程學了一遍,纔剛剛開始,還未入門;
- 在bilibili上看了網上學習視頻,很多都教得比較基礎,進階的web開發教學內容一般都需付費,所以多找其他學習博客或者網站;
- 幾天的學習,個人感覺用python來開發網站,網頁的基礎還是html編程,python實則起到構建連接、數據管理、後臺運維等的框架和數據處理的作用;
- 以上內容,如有出錯,還請多多包涵,我還需多多學習;
存在問題:
- 未解決所開發網頁的外網訪問問題;
- 開發網站,學習html編程語言必不可少,大部分的代碼使用還不懂;
- python中的數據結構、數據分析還是硬骨頭,是接下來的重點,目標是開發與一個實驗室的專屬網站;
- ... ...
-----------------------------------------------------------
推薦學習:
- 菜鳥教程:python基礎教程(小白可以看看,有100道測試題)
- 博客園-武沛齊:https://www.cnblogs.com/wupeiqi/
- 圖書《python程序設計開發寶典 董付國》清華大學出版社、《python基礎教程(第2版修訂版) [挪]Magnus Lie Hetland》人民郵電出版社
>> print(' 未完待續,多多指教! ---- pxz20191221')