為什么國內很少用django,Python+django建站入門篇(2):素數判斷

 2023-10-04 阅读 30 评论 0

摘要:本文使用django框架搭建網站,運行之后,獲取用戶輸入的整數,判斷是否為素數并進行相應的提示。 本文技術要點: 1)使用django創建網站 2)了解MVC開發模式 3)設置路由 4)接收用戶輸入 5)提交用戶輸入,后

本文使用django框架搭建網站,運行之后,獲取用戶輸入的整數,判斷是否為素數并進行相應的提示。

本文技術要點:

1)使用django創建網站

2)了解MVC開發模式

3)設置路由

4)接收用戶輸入

5)提交用戶輸入,后臺判斷是否為素數,然后生成前臺結果頁面

詳細步驟:

1、首先在命令提示符執行命令pip install django正確安裝django框架

2、執行以下命令創建網站項目:

C:\Python36\Scripts>django-admin startproject checkPrime

C:\Python36\Scripts>cd checkPrime

C:\Python36\Scripts\checkPrime>python manage.py startapp mainsite

3、打開文件checkPrime\checkPrime\settings.py,在TEMPLATES節中添加下面的內容:

'DIRS': [os.path.join(BASE_DIR, 'templates')],

4、編寫checkPrime\templates\index.html文件,內容如下:

<!DOCTYPE html>
<html>
??? <head>
??????? <meta charset="utf-8" />
??????? <title>判斷是否為素數</title>
??? </head>
??? <body>
??????? <form name="my form" action="/" method="GET">
??????????? <h3>輸入一個整數,然后單擊按鈕判斷是否為素數</h3>
??????????? 請輸入一個整數:
??????????? <input type="text"?name="integerInput"? width="400px"/>
??????????? <input type="submit" name="ok"? value="判斷"/>
??????????? <br>
??????????? {%if result%}
??????????? {{result}}
??????????? {%endif%}
??????? </form>?
??? </body>
</html>

注意,在上面的代碼中,接收用戶輸入的輸入框必須使用name屬性。代碼截圖為:

5、修改checkPrime\checkPrime\urls.py文件,修改后內容如下:

from?django.conf.urls?import?url
from?django.contrib?import?admin
from?mainsite.views?import?index


urlpatterns = [
????url(r'^$', index),
??? url(r'^admin/', admin.site.urls),
]


6、編寫checkPrime\mainsite\views.py文件,完整內容如下:

from?django.shortcuts?import?render
from?django.template.loader?import?get_template
from?django.http?import?HttpResponse


# Create your views here.
def?index(request):
??? template = get_template('index.html')
????try:

? ? ? ??# 獲取用戶輸入,并嘗試轉換為整數

??????? num =?int(request.GET['integerInput'])
????except:
??????? num =?None


??? result =?''
????if?num !=?None:

? ? ? ??# 判斷是否為素數

????????if?num == 2:
??????????? result =?'{0}是素數'.format(num)
????????elif?num%2 == 0:
??????????? result =?'{0}不是素數'.format(num)
????????else:
??????????? m =?int(num**0.5) + 2
????????????for?i?in?range(3, m, 2):
????????????????if?num % i == 0:
??????????????????? result =?'{0}不是素數'.format(num)
????????????????????break
????????????else:
??????????????? result =?'{0}是素數'.format(num)


? ??# 生成結果

??? html = template.render({'result':result})
????return?HttpResponse(html)


上面代碼的截圖為:



7、啟動網站,在命令提示符環境執行命令python manage.py runserver,如圖所示:

8、訪問網站,在瀏覽器中打開http://127.0.0.1:8000,輸入整數,然后提示是否為素數,如圖:





----------我收分割線------------

相關閱讀:

Python+django建站入門篇:Hello world

Python 3.6+Django開發入門小案例(自動變化的問候)完整步驟



----------我是分割線------------

為慶祝新書《Python程序設計開發寶典》全面上架,清華大學出版社聯合“贛江圖書專營”淘寶店推出特價優惠活動,《Python程序設計開發寶典》原價69元,新書上架期間超低價39.8元,可以復制下面的鏈接使用瀏覽器打開查看圖書詳情和購買:

https://detail.tmall.com/item.htm?spm=a1z10.3-b-s.w4011-14464369246.84.46f16db0roWfX4&id=557107249812&rn=339cbc9df2bac424664103917dedfbd2&abbucket=8&tbpm=3

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://hbdhgg.com/1/112767.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 匯編語言學習筆記 Inc. 保留所有权利。

底部版权信息