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

python模擬實(shí)現(xiàn)圖書管理系統(tǒng)

 更新時(shí)間:2022年03月10日 13:37:36   作者:江海闊?_Great  
這篇文章主要為大家詳細(xì)介紹了python模擬實(shí)現(xiàn)圖書管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了python實(shí)現(xiàn)圖書管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下

軟件python

事先用代碼寫一個(gè)存儲(chǔ)數(shù)據(jù)的數(shù)據(jù)庫,也就是,.txt文件
這是我模擬的一個(gè)數(shù)據(jù)

d1='[{"用戶名": "admin", "密碼": "123", "姓名": "張三"},{"用戶名": "aaa", "密碼": "123", "姓名": "李四"}]'
with open(r"name_list.txt","w") as f:
?? ??? ?f.write(d1)
d2='[{"編號(hào)":1001, "書名": "紅樓夢(mèng)", "作者": "曹雪芹", "借出狀態(tài)": "可借"},\
{"編號(hào)":1002, "書名": "java教程","作者": "齊一天", "借出狀態(tài)": "可借"},\
{"編號(hào)":1003, "書名": "圣經(jīng)","作者": "耶穌", "借出狀態(tài)": "已借出"},\
{"編號(hào)":1004, "書名": "李白詩集","作者": "李白", "借出狀態(tài)": "可借"}\
]'
with open(r"books.txt","w") as f:
?? ??? ?f.write(d2)

數(shù)據(jù)準(zhǔn)備好開始:

一步是讀取數(shù)據(jù)庫中的數(shù)據(jù),將其轉(zhuǎn)換為字符串,因?yàn)榻酉聛淼臄?shù)據(jù)都是字符串的處理

def readUser():
?? ?with open(r"name_list.txt","r") as f:
?? ??? ?jsondata=f.read()
?? ?userlist=json.loads(jsondata)
?? ?return userlist

這一步是將外部數(shù)據(jù)寫入數(shù)據(jù)庫

def writeData(listb):
?? ?jsondata=json.dumps(listb,ensure_ascii=False)
?? ?with open(r"name_list.txt","w") as f:
?? ??? ?f.write(jsondata)
?? ??? ?print("----------------數(shù)據(jù)寫入成功!")

1.用戶登錄:

def login():
?? ?userlist=readUser()
?? ?uname=input("請(qǐng)輸入您的用戶名:")
?? ?upwd=input("請(qǐng)輸入您的密碼:")
?? ?msg="失敗"
?? ?for user in userlist:
?? ??? ?if uname==user["用戶名"] and upwd==user["密碼"]:
?? ??? ??? ?print("恭喜",user["姓名"],"登錄成功")
?? ??? ??? ?msg="成功"
?? ?if msg=="失敗":
?? ??? ?print("登錄失敗,請(qǐng)從新登錄!")
?? ?return msg

2.顯示圖書列表:

def Showbooklist():
?? ?Booklist=readBook()
?? ?print("**************************圖書目錄**************************")
?? ?for data in Booklist:
?? ??? ?print(data["編號(hào)"],"\t",data["書名"],"\t\t\t",data["作者"],"\t\t\t",data["借出狀態(tài)"])
?? ?print("---------------------------------------------------")

3.添加圖書

def addBook():
?? ?Booklist=readBook()
?? ?numlist=[]
?? ?for book in Booklist:
?? ??? ?numlist.append(book["編號(hào)"])
?? ?newnum=max(numlist)+1
?? ?Bname=input("請(qǐng)輸入書名:")
?? ?writer=input("請(qǐng)輸入圖書作者:")
?? ?condi="可借"
?? ?newBooklist={"編號(hào)": newnum, "書名": Bname, "作者": writer,"借出狀態(tài)":condi}
?? ?Booklist.append(newBooklist)
?? ?writeBook(Booklist)

4.刪除圖書

def delbook():
?? ?Booklist=readBook()
?? ?Bnum=int(input("請(qǐng)輸入要?jiǎng)h除的圖書編號(hào):"))
?? ?Bname=input("請(qǐng)輸入要?jiǎng)h除的圖書名稱:")
?? ?for book in Booklist:
?? ??? ?if Bnum==book["編號(hào)"] or Bname==book["書名"]:
?? ??? ??? ?Booklist.remove(book)
?? ??? ??? ?print("圖書已",book["書名"],"經(jīng)刪除")
?? ?writeBook(Booklist)

5.借閱圖書

def lendbook():
?? ?Booklist=readBook()
?? ?Bnum=int(input("請(qǐng)輸入要借閱的圖書編號(hào):"))
?? ?Bname=input("請(qǐng)輸入要借閱的圖書名稱:")
?? ?for book in Booklist:
?? ??? ?if Bnum==book["編號(hào)"] or Bname==book["書名"]:
?? ??? ??? ?if book["借出狀態(tài)"]=="可借":
?? ??? ??? ??? ?print("此書在架,可借閱")
?? ??? ??? ??? ?a=int(input("借閱請(qǐng)安1,退出請(qǐng)按0:"))
?? ??? ??? ??? ?if a==1:
?? ??? ??? ??? ??? ?book["借出狀態(tài)"]="已借出"?? ?
?? ??? ??? ??? ?else:
?? ??? ??? ??? ??? ?break
?? ??? ??? ?else:
?? ??? ??? ??? ?print("此書已被借出,等歸還后再借")
?? ?writeBook(Booklist)

6.歸還圖書

def returnbook():
?? ?Booklist=readBook()
?? ?Bnum=int(input("請(qǐng)輸入要還的圖書編號(hào):"))
?? ?Bname=input("請(qǐng)輸入要還的圖書名稱:")
?? ?for book in Booklist:
?? ??? ?if Bnum==book["編號(hào)"] or Bname==book["書名"]:
?? ??? ??? ?if book["借出狀態(tài)"]=="已借出":
?? ??? ??? ??? ?book["借出狀態(tài)"]="可借"
?? ??? ??? ??? ?print(book["書名"],"已還")

?? ??? ??? ?else:
?? ??? ??? ??? ?print(book["書名"],"書已在架,不用歸還")
?? ?writeBook(Booklist)

最后是調(diào)用所有模塊的總程序:

while 1==1:
?? ?print("*************************圖書管理系統(tǒng)2.0******************************")
?? ?msg=login()
?? ?if msg=="成功":
?? ??? ?print("1.顯示所有的圖書;\n2.圖書上架;\n3.圖書下架;\n4.借閱;\n5.歸還;\n6.退出")
?? ?print("---------------------------------------------------------------------")
?? ?while 2==2:
?? ??? ?choice=int(input("請(qǐng)輸入業(yè)務(wù)編號(hào)(1-6):"))
?? ??? ?if choice==1:
?? ??? ??? ?Showbooklist()
?? ??? ?elif choice==2:
?? ??? ??? ?addBook()
?? ??? ?elif choice==3:
?? ??? ??? ?delbook()
?? ??? ?elif choice==4:
?? ??? ??? ?lendbook()
?? ??? ?elif choice==5:
?? ??? ??? ?returnbook()
?? ??? ?elif choice==6:
?? ??? ??? ?break
?? ??? ?else:
?? ??? ??? ?print("沒有此業(yè)務(wù),請(qǐng)重新選擇")
?? ??? ??? ?continue

這位是執(zhí)行后的效果圖。

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python+selenium+chromedriver實(shí)現(xiàn)爬蟲示例代碼

    python+selenium+chromedriver實(shí)現(xiàn)爬蟲示例代碼

    這篇文章主要介紹了python+selenium+chromedriver實(shí)現(xiàn)爬蟲示例代碼,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-04-04
  • python geemap的安裝步驟及環(huán)境配置

    python geemap的安裝步驟及環(huán)境配置

    geemap是基于GEE由吳秋生老師二次開發(fā)的一個(gè)包,geemap主要使用python來進(jìn)行實(shí)現(xiàn)相關(guān)功能,這篇文章主要介紹了geemap的詳細(xì)安裝步驟及環(huán)境配置,需要的朋友可以參考下
    2022-08-08
  • wxPython的安裝圖文教程(Windows)

    wxPython的安裝圖文教程(Windows)

    下面小編就為大家分享一篇wxPython的安裝圖文教程(Windows),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2017-12-12
  • python實(shí)現(xiàn)pptx批量向PPT中插入圖片

    python實(shí)現(xiàn)pptx批量向PPT中插入圖片

    大家好,本篇文章主要講的是python實(shí)現(xiàn)pptx批量向PPT中插入圖片,感興趣的同學(xué)趕快來看一看吧,對(duì)你有幫助的話記得收藏一下
    2022-02-02
  • 經(jīng)驗(yàn)豐富程序員才知道的8種高級(jí)Python技巧

    經(jīng)驗(yàn)豐富程序員才知道的8種高級(jí)Python技巧

    這篇文章主要介紹了經(jīng)驗(yàn)豐富程序員才知道的8種高級(jí)Python技巧,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • pycharm下打開、執(zhí)行并調(diào)試scrapy爬蟲程序的方法

    pycharm下打開、執(zhí)行并調(diào)試scrapy爬蟲程序的方法

    本篇文章主要介紹了pycharm下打開、執(zhí)行并調(diào)試scrapy爬蟲程序的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2017-11-11
  • Python批量將圖片灰度化的實(shí)現(xiàn)代碼

    Python批量將圖片灰度化的實(shí)現(xiàn)代碼

    這篇文章主要介紹了Python批量將圖片灰度化的實(shí)現(xiàn)代碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-04-04
  • windows下python安裝pip圖文教程

    windows下python安裝pip圖文教程

    這篇文章主要為大家詳細(xì)介紹了windows下python安裝pip圖文教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • python中apply函數(shù)詳情

    python中apply函數(shù)詳情

    這篇文章主要介紹了python中apply函數(shù)詳情,該函數(shù)最有用的是第一個(gè)參數(shù),這個(gè)參數(shù)是函數(shù),相當(dāng)于C/C++的函數(shù)指針,更多詳細(xì)內(nèi)容,需要的小伙伴可以參考下面文章內(nèi)容
    2022-01-01
  • python將時(shí)分秒轉(zhuǎn)換成秒的實(shí)例

    python將時(shí)分秒轉(zhuǎn)換成秒的實(shí)例

    今天小編就為大家分享一篇python將時(shí)分秒轉(zhuǎn)換成秒的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12

最新評(píng)論