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

python代碼實現(xiàn)圖書管理系統(tǒng)

 更新時間:2020年11月30日 09:57:32   作者:江liuer_666  
這篇文章主要為大家詳細介紹了python代碼實現(xiàn)圖書管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

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

圖書管理系統(tǒng)

功能簡介

  • 添加圖書時,圖書ID不能重復(fù),圖書名可重復(fù)
  • 刪除,查詢,修改功能,輸入圖書名之后提供所有的同名的圖書,用戶可以按照圖書序號對具體的一本書進行操作
  • 顯示書籍,分行顯示,每行一本書的信息

書籍信息以如下格式保存在txt文本文件格式下

源代碼

#-*- coding=utf8 -*- 
# @author:sololi
# date: 2020/11/12
# 文件說明 : data
import sys
def print_muen():
 print("----菜單提示----")
 print("[1]:添加圖書")
 print("[2]:查詢圖書")
 print("[3]:刪除圖書")
 print("[4]:修改圖書信息")
 print("[5]:顯示所有圖書")
 print("[6]:退出")

def add_book():
 book_id=input("請輸入圖書編號")
 book_name=input("請輸入圖書名稱")
 book_loc=input("請輸入圖書位置")
 for i in books:
 if book_id==i["book_id"]:
 print("編號重復(fù)")
 break
 else:
 book={}
 book["book_id"]=book_id
 book["book_name"]=book_name
 book["book_loc"]=book_loc
 books.append(book)
 new_file(books)
 print("添加成功")

def find_book():
 jg=0
 while True:
 book_name=input("輸入要找的書名")
 for i in books:
 if book_name==i["book_name"]:
 print(i)
 jg=1
 if jg==0:
 print("查找失敗請重新輸入")
 continue
 elif jg==1:
 break

def dell_book():
 book_name =input("請輸入圖書書名")
 i=0
 j=0
 jg=0
 flag=[]
 while i<len(books):
 if books[i]["book_name"]==book_name:
 id=books[i]["book_id"]
 flag.append(id)
 print("圖書編號:{}".format(id))
 jg=1
 i+=1
 if jg==0:
 print("找不到圖書名")
 if jg==1:
 book_id=input("請輸入刪除的圖書編號")
 i=0
 while j < len(flag):
 if flag[j] == book_id:
 while i < len(books):
  if books[i]["book_id"] == book_id:
  del books[i]
  new_file(books)
  print("刪除成功")
  break
  i+=1
 break
 j+=1
 else:
 print("輸入的編號有誤")
 return books

def modify_book():
 book_name = input("請輸入修改的圖書名稱")
 i = 0
 jg = 0
 flag = []
 while i < len(books):
 if books[i]["book_name"] == book_name:
 id = books[i]["book_id"]
 flag.append(id)
 print("本書圖書編號:{}".format(id))
 jg = 1
 i += 1
 if jg == 0:
 print("找不到圖書名")
 elif jg == 1:
 book_id = input("請輸入修改的圖書編號,或者其他需要修改的圖書編號")
 for i in books:
 if book_id == i["book_id"]:
 New_id = input("新的圖書編號")
 if New_id == i["book_id"]:
  print("輸入編號重復(fù)")
  break
 else:
  New_name = input("新的圖書名稱")
  New_loc = input("新的圖書位置")
  i["book_id"] = New_id
  i["book_name"] = New_name
  i["book_loc"] = New_loc
  new_file(books)
  break
 else:
 print("輸入有誤")

def all_book():
 for i in books:
 print(i)

def read_book(data):#將文本文件里的圖書信息讀取到books中
 f = open(data, mode="r", encoding="utf8")
 books = f.readlines()
 f.close()
 for i in range(0, len(books)):
 books[i] = eval(books[i].replace("\n", ""))
 return books

def new_file(books):#將books的內(nèi)容更新到文本文件里
 i=0
 nf = open('data', 'w+',encoding='utf8') # 以清空原文本文件內(nèi)容的方式打開文件寫入
 while i<len(books):
 new=str(books[i])
 nf.write(new)
 if i !=len(books)-1:
 nf.write("\n")
 i+=1
 nf.close()

if __name__=="__main__":#主要流程
 while True:
 data="data"
 books=read_book(data)
 print_muen()
 choice=input("請輸入您的選擇")
 if choice=='1':
 add_book()
 all_book()
 elif choice=='2':
 find_book()
 elif choice=='3':
 dell_book()
 all_book()
 elif choice=='4':
 modify_book()
 all_book()
 elif choice == '5':
 all_book()
 elif choice == '6':
 print("感謝您的使用")
 sys.exit(0)
 else:
 print("您的輸入有誤,請重新輸入")

還可以添加一個登錄與注冊系統(tǒng):點擊此處

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

相關(guān)文章

  • ?Python?匿名函數(shù)lambda?詳情

    ?Python?匿名函數(shù)lambda?詳情

    這篇文章主要介紹了?Python?匿名函數(shù)lambda,??lambda?????函數(shù)返回函數(shù)本身而不是將其賦值給一個變量名。所以它也被稱為匿名函數(shù),下文更多相關(guān)內(nèi)容需要的小伙伴可以參考一下
    2022-03-03
  • python實現(xiàn)飛機大戰(zhàn)游戲(pygame版)

    python實現(xiàn)飛機大戰(zhàn)游戲(pygame版)

    這篇文章主要為大家詳細介紹了python實現(xiàn)pygame版的飛機大戰(zhàn)游戲,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • python 字典訪問的三種方法小結(jié)

    python 字典訪問的三種方法小結(jié)

    今天小編就為大家分享一篇python 字典訪問的三種方法小結(jié),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-12-12
  • PyTorch中Tensor的拼接與拆分的實現(xiàn)

    PyTorch中Tensor的拼接與拆分的實現(xiàn)

    這篇文章主要介紹了PyTorch中Tensor的拼接與拆分的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-08-08
  • 關(guān)于python常見異常以及處理方法

    關(guān)于python常見異常以及處理方法

    這篇文章主要介紹了關(guān)于python常見異常以及處理方法,python用異常對象(exception object)來表示異常情況。遇到錯誤后,會引發(fā)異常,需要的朋友可以參考下
    2023-04-04
  • Python分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu)示例代碼

    Python分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu)示例代碼

    在Python中,分支結(jié)構(gòu)通過if、elif和else關(guān)鍵字來實現(xiàn)條件判斷,在使用if語句時,程序會根據(jù)條件表達式的真假執(zhí)行相應(yīng)的代碼塊,這篇文章主要介紹了Python分支結(jié)構(gòu)和循環(huán)結(jié)構(gòu),需要的朋友可以參考下
    2024-03-03
  • python?pyaudio音頻錄制的實現(xiàn)

    python?pyaudio音頻錄制的實現(xiàn)

    這篇文章主要介紹了python?pyaudio音頻錄制的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2023-05-05
  • Python基礎(chǔ)之標準庫和常用的第三方庫案例教程

    Python基礎(chǔ)之標準庫和常用的第三方庫案例教程

    這篇文章主要介紹了Python基礎(chǔ)之標準庫和常用的第三方庫案例教程,本篇文章通過簡要的案例,講解了該項技術(shù)的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • Python計算字符寬度的方法

    Python計算字符寬度的方法

    這篇文章主要介紹了Python計算字符寬度的方法,結(jié)合實例形式較為詳細的分析了Python針對字符寬度的計算方法,需要的朋友可以參考下
    2016-06-06
  • windows下Python安裝、使用教程和Notepad++的使用教程

    windows下Python安裝、使用教程和Notepad++的使用教程

    這篇文章主要介紹了windows下Python安裝、使用教程和Notepad++的使用教程,需要的朋友可以參考下
    2019-10-10

最新評論