您好,登錄后才能下訂單哦!
這篇“怎么用Python做一個簡單的圖書管理系統”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“怎么用Python做一個簡單的圖書管理系統”文章吧。
為了制作一個友好的“圖書管理系統”,先列出所有功能的菜單。如下:
print(""" *************************** * 歡迎進入圖書管理系統 * * 0 .退出 * * 1 .列出所有書籍 * * 2 .添加書籍 * * 3 .修改書籍 * * 4 .刪除書籍 * * 5 .借書 * * 6 .還書 * *************************** """)
第二步,用戶會輸入 0~6 的整數,以對應相對的功能。如果用戶輸入錯誤,輸出“輸入錯誤,請重新輸入”。
while True: n=input("輸入序號(0-6):") if n=="0": pass elif n=="1": pass elif n=="2": pass elif n=="3": pass elif n=="4": pass elif n=="5": pass elif n=="6": pass else: print("輸入錯誤,請重新輸入") print("") #表示換一行
很多語言都提供了“空語句”支持。Python 也不例外,Python 的 pass 語句就是空語句。
有時候程序需要占一個位、放一條語句,但又不希望這條語句做任何事情,此時就可通過 pass 語句來實現。通過使用 pass 語句,可以讓程序更完整。
如下程序示范了 pass 作為空語句的用法:
s=int(input("請輸入一個整數: ")) if s>5: print("大于5") elif s<5: pass # 相當于占位符 else: print("等于5")
正如從上面程序所看到的,對于 s 小于 5 的情形,程序暫時不處理(或不知道如何處理),此時程序就需要通過空語句來占一個位,這樣即可使用 pass 語句了。
如:用戶輸入“0”,即不但需要告訴用戶“已退出程序”,還要完成“退出”功能,代碼如下:
if n=="0": print("退出成功") break
再比如:用戶輸入“5”( 借書 ),如果庫存仍有,提示“借書成功”,并減少此書庫存。否則提示“庫存不足”。如下程序:
elif n=="5": xh=intinput() book=books[xh-1] if book["num"]>0: book["num"]-=1 print("借書成功") else: print("庫存不足")
請參照以上代碼,完善其他功能。
可以定義函數,并循環使用函數,有助于代碼的簡潔性。如代碼:
def intinput(n="請輸入序號:"): while True: s=input(n) if s.isnumeric(): return int(s) else: print("請輸入整數")
str.isnumeric() 方法:
檢測字符串是否只由數字組成。這種方法是只針對 unicode 對象。
函數參數含義與注意事項:
各部分參數的含義如下:
函數名:其實就是一個符合 Python 語法的標識符,但不建議讀者使用 a、b、c 這類簡單的標識符作為函數名,函數名最好能夠體現出該函數的功能(如上面的 my_len,即表示我們自定義的 len() 函數)。
形參列表:設置該函數可以接收多少個參數,多個參數之間用逗號( , )分隔。
[return [返回值] ]:整體作為函數的可選參參數,用于設置該函數的返回值。也就是說,一個函數,可以用返回值,也可以沒有返回值,是否需要根據實際情況而定。
注:在創建函數時,即使函數不需要參數,也必須保留一對空的“()”,否則 Python 解釋器將提示“invaild syntax”錯誤。另外,如果想定義一個沒有任何功能的空函數,可以使用 pass 語句作為占位符。
函數的優點:
在python之中使用函數最大和最直觀的優點就是可以將一段代碼封裝起來以便隨時調用,這樣能夠極大的提高了程序的簡潔性和可讀性,還可以讓代碼的邏輯性更加清晰。
一般來說使用函數去封裝的代碼塊都是去實現某一種功能的,而被封裝成函數的代碼就能夠不斷地去重復的調用。這樣既可以提高python程序的開發效率,還可以減少一些不必要代碼的編寫。
函數還有優點就是它其實是一個獨立于其他外部代碼的模塊,在一個python程序去執行時如果不手動的去調用函數的話那么這個函數是不會去執行的。而當函數之中出現了錯誤的時候也很容易的就能夠去進行修改而不會對程序的運行造成太大的影響,很好的實現了模塊化。
python函數還可以直接保存在一個py文件之中然后以模塊的方式去導入,這樣一個通用的編寫好的python函數就能夠運用在很多不同的程序之中,經常使用的內置模塊和python第三方庫內其實存儲的就是一個個函數。
圖書管理系統所有代碼:
def intinput(n="請輸入序號:"): while True: s=input(n) if s.isnumeric(): return int(s) else: print("請輸入整數") books=[{"name":"Scratch","isbn":"12345","num":2}, {"name":"Python","isbn":"12346","num":5}] print(""" *************************** * 歡迎進入圖書管理系統 * * 0 .退出 * * 1 .列出所有書籍 * * 2 .添加書籍 * * 3 .修改書籍 * * 4 .刪除書籍 * * 5 .借書 * * 6 .還書 * *************************** """) while True: n=input("輸入序號(0-6):") if n=="0": print("退出成功") break elif n=="1": print("序號\t書名\t書號\t數量") index=1 for book in books: print("%d\t%s\t%s\t%d"%(index,book["name"],book["isbn"],book["num"])) index+=1 elif n=="2": book=dict() book["name"]=input("請輸入書名:") book["isbn"]=input("請輸入書號:") book["num"]=intinput("請輸入數量:") books.append(book) print("添加成功") elif n=="3": try: xh=intinput() book=books[xh-1] book["name"]=input("請輸入書名:") book["isbn"]=input("請輸入書號:") book["num"]=intinput("請輸入數量:") print("修改成功") except: print("出錯了") elif n=="4": s=intinput() if 1<=s<=len(books): del books[xh-1] print("刪除成功") else: print("超出范圍") elif n=="5": xh=intinput() book=books[xh-1] if book["num"]>0: book["num"]-=1 print("借書成功") else: print("庫存不足") elif n=="6": xh=intinput() try: book=books[xh-1] book["num"]-=1 print("還書成功") except: print("未查詢到書本") else: print("輸入錯誤,請重新輸入") print("")
以上就是關于“怎么用Python做一個簡單的圖書管理系統”這篇文章的內容,相信大家都有了一定的了解,希望小編分享的內容對大家有幫助,若想了解更多相關的知識內容,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。