0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

用Python寫個小工具網(wǎng)頁

汽車電子技術(shù) ? 來源:Python腳本 ? 作者:idlepig ? 2023-03-03 14:52 ? 次閱讀

簡簡單單的用 Python 擼一個計算年齡的工具網(wǎng)頁,不用對前端特別熟悉,只要專注于工具的邏輯,其他都交給 Python 吧。

1. 總體結(jié)構(gòu)

實現(xiàn)了 3 個功能

圖片

2. 正確地計算年齡

輸入 2000-01-01

# 用戶輸入的生日
now = datetime.strptime(B, "%Y-%m-%d")
# 輸出現(xiàn)在年齡
delta_y = rd(datetime.now(), now).years
delta_m = rd(datetime.now(), now).months
delta_d = rd(datetime.now(), now).days

圖片

圖片

3. 警告日期格式有問題

日期格式不正確,比如為 2000/01/01

# 檢查日期格式
try:
    val = datetime.strptime(B, "%Y-%m-%d")
except:
    # 如果格式錯誤,警告提示
    put_error("警告:日期格式不正確")
    time.sleep(3)
    continue

圖片

圖片

4. 輸入日期比現(xiàn)在時間大

比如為 2022-01-29,顯示輸入時間和現(xiàn)在時間,進行提示

# 日期比現(xiàn)在時間大
put_warning(
    f"找不到結(jié)果,現(xiàn)在日期是"
    f"{date[0]}-{date[1]}-{date[2]}, "
    f"你不能使用"
    f"{in_date[0]}-{in_date[1]}-"
    f"{in_date[2]}這個日期。")

圖片

圖片

5. 需要的第三方模塊

我們只需要關(guān)注 python 代碼,pywebio 會自動生成網(wǎng)頁

6. 完整的代碼

# 計算年齡
from dateutil.relativedelta import relativedelta as rd
# 獲取時間、格式化時間
from datetime import datetime
# 用來延遲
import time
# 用來生成網(wǎng)頁
from pywebio.input import *
from pywebio.output import *

while True:
    clear()  # 每次循環(huán)先清空所有數(shù)據(jù)

    # 標題
    put_html(""left"">"
             "年齡計算器")

    # 輸入生日日期
    B = input(
        "",
        placeholder="你的生日,格式為 yyyy-mm-dd"
    )

    # 檢查日期格式
    try:
        val = datetime.strptime(B, "%Y-%m-%d")
    except:
        # 如果格式錯誤,警告提示
        put_error("警告:日期格式不正確")
        time.sleep(3)
        continue

    # 解析輸入的日期
    in_date = B.split('-')

    # 獲取現(xiàn)在時間
    date = datetime.now().strftime("%Y-%m-%d")
    # 解析現(xiàn)在的日期
    date = date.split('-')

    # 轉(zhuǎn)化為數(shù)字列表
    in_date = [int(i) for i in in_date]
    date = [int(i) for i in date]

    if in_date <= date:
        # 用戶輸入的生日
        now = datetime.strptime(B, "%Y-%m-%d")
        # 輸出現(xiàn)在年齡
        delta_y = rd(datetime.now(), now).years
        delta_m = rd(datetime.now(), now).months
        delta_d = rd(datetime.now(), now).days
        popup("你的年齡", [put_html(
            "%s 歲
%s 個月
%s 天" % (delta_y, delta_m, delta_d)),
            put_buttons(
                ['點擊關(guān)閉'],
                onclick=lambda
                    _: close_popup())],
              implicit_close=True)
    else:
        # 日期比現(xiàn)在時間大
        put_warning(
            f"找不到結(jié)果,現(xiàn)在日期是"
            f"{date[0]}-{date[1]}-{date[2]}, "
            f"你不能使用"
            f"{in_date[0]}-{in_date[1]}-"
            f"{in_date[2]}這個日期。")
        time.sleep(3)
    clear()
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 前端
    +關(guān)注

    關(guān)注

    1

    文章

    192

    瀏覽量

    17752
  • 網(wǎng)頁
    +關(guān)注

    關(guān)注

    0

    文章

    73

    瀏覽量

    19318
  • python
    +關(guān)注

    關(guān)注

    56

    文章

    4797

    瀏覽量

    84689
收藏 人收藏

    評論

    相關(guān)推薦

    硬件設(shè)計的小工具

    本帖最后由 gk320830 于 2015-3-5 14:15 編輯 收集的設(shè)計常用的小工具,希望對大家有用
    發(fā)表于 05-07 11:40

    圖片轉(zhuǎn)PCB圖的小工具

    畫PCB的時候發(fā)現(xiàn)的一個不錯的小工具,可以將圖片轉(zhuǎn)成PCB圖。大家還有什么好用的小工具,大家積極分享一下O(∩_∩)O~~btp2.rar (110.08 KB )
    發(fā)表于 05-08 06:36

    UcguiBuilder4制作的CHECKBOX小工具例程分享!

    UcguiBuilder4制作的CHECKBOX小工具例程,好用,值得推廣!注意換膚前后有差異。EMWIN實驗17+ CHECKBOX小工具.rar (3.82 MB )
    發(fā)表于 07-29 22:56

    C語言注釋刪除小工具是什么

    C語言注釋刪除小工具是一款刪除c語言注釋并實現(xiàn)編譯的工具,如果你喜歡這款軟件,就快來IT貓撲下載吧!C語言注釋刪除小工具介紹很多編譯器不支持中文注釋,特別是日系的單片機編譯器,這是一個C語言注釋刪除
    發(fā)表于 07-14 08:39

    C語言注釋刪除小工具的使用教程

    C語言注釋刪除小工具是什么?C語言注釋刪除小工具共有幾個狀態(tài)?
    發(fā)表于 10-18 06:06

    amo的編程小工具集合

    電子發(fā)燒友網(wǎng)站提供《amo的編程小工具集合.zip》資料免費下載
    發(fā)表于 07-22 09:42 ?14次下載

    電子工程類小工具(大合集)

    電子發(fā)燒友網(wǎng)站提供《電子工程類小工具(大合集).rar》資料免費下載
    發(fā)表于 01-21 14:23 ?1942次下載

    自制51小工具

    自己做的51小工具,有數(shù)碼管段碼生成,51定時器計算,進制轉(zhuǎn)換等
    發(fā)表于 11-19 11:35 ?7次下載

    自寫小工具

    一個自己寫的小工具感覺還不錯,分享給大家。
    發(fā)表于 05-17 09:49 ?40次下載

    單片機計算小工具

    常用單片機計算小工具
    發(fā)表于 02-27 16:43 ?11次下載

    分享一份網(wǎng)友學(xué)習(xí)python時編寫的一個小工具

    EETOP網(wǎng)友很多是IC設(shè)計相關(guān)的,特別是從事IC驗證的,經(jīng)常會編寫腳本,以前的最多的應(yīng)該是Perl語言,隨著python的流行,也有很多人開始學(xué)習(xí)Python. 今天分享一份網(wǎng)友學(xué)習(xí)
    的頭像 發(fā)表于 01-22 10:43 ?7359次閱讀
    分享一份網(wǎng)友學(xué)習(xí)<b class='flag-5'>python</b>時編寫的一個<b class='flag-5'>小工具</b>

    CAD看圖小工具免費下載

    CAD看圖小工具免費下載
    發(fā)表于 12-18 14:01 ?46次下載

    射頻工程類計算小工具

    射頻工程類計算小工具,有LC諧振頻率計算、PCB特性阻抗計算工具軟件、電感量計算等一共19個計算小工具。
    發(fā)表于 03-21 14:50 ?54次下載

    電阻分壓計算小工具

    一個計算電阻分壓的小工具
    發(fā)表于 09-07 14:54 ?41次下載

    amo的編程小工具合集

    amo的編程小工具合集
    發(fā)表于 03-23 09:19 ?6次下載