天天看點

python圖書館管理系統源代碼_python代碼實作圖書管理系統

本文執行個體為大家分享了python代碼實作圖書管理系統的具體代碼,供大家參考,具體内容如下

圖書管理系統

python圖書館管理系統源代碼_python代碼實作圖書管理系統

功能簡介

添加圖書時,圖書ID不能重複,圖書名可重複

删除,查詢,修改功能,輸入圖書名之後提供所有的同名的圖書,使用者可以按照圖書序号對具體的一本書進行操作

顯示書籍,分行顯示,每行一本書的資訊

書籍資訊以如下格式儲存在txt文本檔案格式下

python圖書館管理系統源代碼_python代碼實作圖書管理系統

源代碼

#-*- 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("編号重複")

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

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("輸入編号重複")

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的内容更新到文本檔案裡

i=0

nf = open('data', 'w+',encoding='utf8') # 以清空原文本檔案内容的方式打開檔案寫入

while i

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("您的輸入有誤,請重新輸入")

還可以添加一個登入與注冊系統:點選此處

以上就是本文的全部内容,希望對大家的學習有所幫助,也希望大家多多支援随便開發網。