亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

利用Python編寫個有趣的記仇本

 更新時間:2023年04月17日 10:53:38   作者:真的不能告訴你我的名字  
這篇文章主要為大家介紹了一個有趣的小案例——利用Python編寫個有趣的記仇本,文中的示例代碼講解詳細,感興趣的小伙伴可以嘗試一下

最近背著老婆買了一個switch卡帶,這貨居然給丈母娘講,害得我被丈母娘說還小了,不買奶粉買游戲,太氣人了,我連夜用python寫了個《記仇本》,畫個圈圈把她記下來。

本片文章,主要關注于python代碼,而htmlcss將暫時被忽略。

記仇本展示

如題所述,項目已經(jīng)寫好了,是基于local_storage存儲在本地的項目

該項目運行時是基于brython, 你可能想問,為什么不使用原生python來編寫網(wǎng)頁呢,這個有個誤區(qū)是,網(wǎng)頁是由html代碼編寫的,而原生python想要操作DOM非常難,所以brython正是為這個來操作的。

初始打開頁面,因為沒有數(shù)據(jù)展示,所以只有一個增加按鈕。

當我們點擊【畫個圈圈記下來】按鈕后,會刷新為新增頁面,例如:

此時,我們只需要輸入信息,比如 記老婆的仇,緣由為 買switch游戲透露給丈母娘,還得被罵。

此時點擊記仇,就可以存儲到頁面上了。

此時若點擊已原諒,則可以刪除該記錄。

brython 之 local_storage

你可能細心發(fā)現(xiàn)了,哎,關掉了瀏覽器,下次打開,怎么還會有記錄在上面呢,這是因為用了local_storage,那么,什么是local_storage呢?

哎,我們使用的是brython中的local_storage但是,它可不是python定義的哦,而是HTML 5提供的存儲數(shù)據(jù)的API之一,可以在瀏覽器中保持鍵值對數(shù)據(jù)塊。

現(xiàn)在來展示使用一下brython存儲和刪除的操作。

導入庫:

from browser.local_storage import storage

存儲數(shù)據(jù),例如鍵值信息juejinName存儲為pdudo

storage[juejinName] = "pdudo"

查詢的話,直接使用storage[變量]就好,若為空,則返回None

v = storage[juejinName]

循環(huán)所有的key,需要引入window庫,再使用for...in來完成

from browser import window
for key in window.localStorage:
    print(key)

也可以直接使用for...in來遍歷storage

而刪除數(shù)據(jù)呢?只需要像刪除字典一下

del storage[juejinName]

storage是不是操作起來和字典非常類似呢?減少了開發(fā)者的學習成本。

制作項目

有了上述前置條件后,我們再看該項目,便可以總結為 針對localStorage的增刪查,首先當頁面加載出來的時候,我們需要先遍歷一下localstorage數(shù)據(jù),從而映射為一個table,例如:

  for key in window.localStorage:
    tr = html.TR()
    datas = json.loads(storage[key])

    delBtn = html.BUTTON("已原諒")
    delBtn.dataset["id"] = datas["id"]
    delBtn.className = "confirm-btn"
    delBtn.bind("click",delGrudges)

    td = html.TD(delBtn+" "+time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(int(datas["id"]))))
    tr <= td

    for tdVal in datas["whos"],datas["Text"]:
      td = html.TD(tdVal)
      tr <= td
        
    tb <= tr 

    userWindows <= tb

上述代碼是遍歷localStorage,而后在定義刪除按鈕,等將其他值組合完畢后,全部加載進table中,而后再頁面上顯示。

而添加數(shù)據(jù)呢?

def saveGrudges(ev):
  getWhoVal = document["whos"].value
  getTextVal = document["textArea"].value

  if getWhoVal == "" or getTextVal == "":
    return
  
  document["saveBtn"].unbind("click")


  ids = int(time.time())
  datas = {
    "id": ids,
    "whos": getWhoVal,
    "Text": getTextVal
  }

  storage[str(ids)] = json.dumps(datas)

上述代碼,顯示獲取inputtextarea框中的值,再判斷是否用戶沒有輸入,我們將數(shù)據(jù)組裝為一個字典,而后轉(zhuǎn)換為字符串,再存入localstage中。

還有其他操作,這個可以直接看代碼說明,brython很簡單的。

總結

這篇文章,是善用localStorage來作為鍵值對存儲,以此來保證打開和關閉瀏覽器,不會對數(shù)據(jù)產(chǎn)生影響,整個項目就是圍繞這個localStorage增刪改查來操作的。

到此這篇關于利用Python編寫個有趣的記仇本的文章就介紹到這了,更多相關Python記仇本內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • python中os.environ基本介紹及使用方法

    python中os.environ基本介紹及使用方法

    os.environ是Python中的一個字典對象,它包含了當前進程的環(huán)境變量,通過使用os.environ,可以獲取和設置環(huán)境變量的值,這篇文章主要介紹了python中os.environ基本介紹及使用方法,需要的朋友可以參考下
    2023-08-08
  • Python Requests.post()請求失敗時的retry設置方式

    Python Requests.post()請求失敗時的retry設置方式

    這篇文章主要介紹了Python Requests.post()請求失敗時的retry設置方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Python實現(xiàn)的彈球小游戲示例

    Python實現(xiàn)的彈球小游戲示例

    這篇文章主要介紹了Python實現(xiàn)的彈球小游戲,可實現(xiàn)類似乒乓球游戲的鍵盤控制底部擋板移動碰撞小球的游戲功能,需要的朋友可以參考下
    2017-08-08
  • Python rstrip()方法實例詳解

    Python rstrip()方法實例詳解

    這篇文章主要介紹了Python rstrip()方法,包括rstrip方法的語法介紹和參數(shù)類型,需要的朋友可以參考下
    2018-11-11
  • 深入了解Python二維直方圖

    深入了解Python二維直方圖

    只統(tǒng)計像素的灰度值這一特征,可將其成為一維直方圖。二維直方圖可以統(tǒng)計像素的色相和飽和度,用于查找圖像的顏色直方圖。本文將為大家介紹分別使用OpenCV和NumPy函數(shù)計算直方圖,需要的可以學習一下
    2021-12-12
  • 解決python中0x80072ee2錯誤的方法

    解決python中0x80072ee2錯誤的方法

    在本篇文章中小編給大家分享的是關于解決python中0x80072ee2錯誤的方法,需要的朋友們可以參考下。
    2020-07-07
  • python3 scrapy框架的執(zhí)行流程

    python3 scrapy框架的執(zhí)行流程

    Scrapy的安裝有多種方式,它支持Python2.7版本及以上或Python3.3版本及以上。下面說明python3 scrapy框架的常用命令及框架執(zhí)行流程,感興趣的朋友一起看看吧
    2021-07-07
  • python線程join方法原理解析

    python線程join方法原理解析

    這篇文章主要介紹了python線程join方法原理解析,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-02-02
  • numpy數(shù)組做圖片拼接的實現(xiàn)(concatenate、vstack、hstack)

    numpy數(shù)組做圖片拼接的實現(xiàn)(concatenate、vstack、hstack)

    這篇文章主要介紹了numpy數(shù)組做圖片拼接的實現(xiàn)(concatenate、vstack、hstack),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-11-11
  • Python?實現(xiàn)循環(huán)最快方式(for、while?等速度對比)

    Python?實現(xiàn)循環(huán)最快方式(for、while?等速度對比)

    這篇文章主要介紹了Python?利用for、while?實現(xiàn)循環(huán)最快方式,文章主要對for、while?等速度對比詳細介紹,具有一定的參考價值?,需要的小伙伴可以參考一下
    2022-01-01

最新評論