Maison >développement back-end >Tutoriel Python >Comment écrire un système de gestion de bibliothèque simple en utilisant Python ?

Comment écrire un système de gestion de bibliothèque simple en utilisant Python ?

WBOY
WBOYavant
2023-05-07 21:52:103128parcourir

    Étapes de développement

    1. " "Système de gestion de bibliothèque", listez d'abord le menu de toutes les fonctions. Comme suit :

    print("""
    ***************************
    * 欢迎进入图书管理系统    *
    * 0 .退出                 *
    * 1 .列出所有书籍         *
    * 2 .添加书籍             *
    * 3 .修改书籍             *
    * 4 .删除书籍             *
    * 5 .借书                 *
    * 6 .还书                 *
    ***************************
    """)

    2. Obtenir la saisie de l'utilisateur :

    Dans la deuxième étape, l'utilisateur saisira un entier de 0 à 6 pour correspondre à la fonction correspondante. Si l'utilisateur fait une erreur de saisie, "Erreur de saisie, veuillez ressaisir" est affiché.

    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("")   #表示换一行

    Extension :

    De nombreuses langues offrent la prise en charge des "instructions vides". Python ne fait pas exception. L'instruction pass de Python est une instruction vide.

    Parfois, le programme doit occuper un espace et mettre une instruction, mais ne veut pas que cette instruction fasse quoi que ce soit. Dans ce cas, cela peut être réalisé via l'instruction pass. En utilisant l'instruction pass, vous pouvez rendre votre programme plus complet.

    Le programme suivant démontre l'utilisation de pass comme instruction vide :

    s=int(input("请输入一个整数: "))
    if s>5:
        print("大于5")
    elif s<5:
        pass   # 相当于占位符
    else:
        print("等于5")

    Comme vous pouvez le voir dans le programme ci-dessus, pour s moins que 5 Dans ce cas, le programme ne le gère pas pour le moment (ou ne sait pas comment le gérer). À ce stade, le programme doit occuper une position via une instruction vide, pour que l'instruction pass puisse être. utilisé.

    3. Améliorez chaque programme de commande

    Par exemple : l'utilisateur saisit "0", c'est-à-dire , non seulement il faut l'informer. L'utilisateur a "quitté le programme" et doit compléter la fonction "quitter". Le code est le suivant :

    if n=="0":
        print("退出成功")
        break

    Un autre exemple. : l'utilisateur saisit « 5 » (emprunt de livres), si l'inventaire s'il y en a encore, il proposera « emprunt de livre réussi » et réduira l'inventaire de ce livre. Sinon, le message « Stock insuffisant » s'affichera. Le programme suivant :

    elif n=="5":
        xh=intinput()
        book=books[xh-1]
        if book["num"]>0:
            book["num"]-=1
            print("借书成功")
        else:
            print("库存不足")

    Veuillez vous référer au code ci-dessus pour améliorer d'autres fonctions.

    4. Optimisez le programme pour rendre le code plus concis

    Vous pouvez définir des fonctions et recycler des fonctions, ce qui contribue à la simplicité du code. Tel que le code :

    def intinput(n="请输入序号:"):
        while True:
            s=input(n)
            if s.isnumeric():
                return int(s)
            else:
                print("请输入整数")

    Extension :

    str.isnumeric() méthode :

    Vérifiez si la chaîne uniquement composé de chiffres. Cette méthode concerne uniquement les objets Unicode.

    La signification et les précautions des paramètres de fonction :

    La signification de chaque partie des paramètres est la suivante :

    #🎜 🎜#

    Nom de la fonction : Il s'agit en fait d'un identifiant conforme à la syntaxe Python, mais il n'est pas recommandé aux lecteurs d'utiliser des identifiants simples tels que a, b, c comme noms de fonction. la fonction de la fonction (telle que my_len ci-dessus représente notre fonction len() personnalisée).
    • Liste formelle des paramètres : définissez le nombre de paramètres que la fonction peut recevoir. Plusieurs paramètres sont séparés par des virgules (,).
    • [return [return value]] : Le tout est utilisé comme paramètre facultatif de la fonction, utilisé pour définir la valeur de retour de la fonction. En d’autres termes, une fonction peut utiliser une valeur de retour ou aucune valeur de retour. Le fait que cela soit nécessaire dépend de la situation réelle.
    • Remarque : Lors de la création d'une fonction, même si la fonction ne nécessite pas de paramètres, une paire de "()" vides doit être conservée, sinon l'interpréteur Python vous demandera "syntaxe invalide" "erreur. Alternativement, si vous souhaitez définir une fonction vide sans aucune fonctionnalité, vous pouvez utiliser l'instruction pass comme espace réservé.
    Avantages des fonctions :

    L'avantage le plus grand et le plus intuitif de l'utilisation des fonctions en python est qu'un morceau de code peut être encapsulé afin que il peut être appelé à tout moment , ce qui peut grandement améliorer la simplicité et la lisibilité du programme, et également rendre la logique du code plus claire.
    • De manière générale, les blocs de code encapsulés par des fonctions sont utilisés pour implémenter une certaine fonction, et le code encapsulé dans les fonctions peut être répété en continu. Cela peut non seulement améliorer l'efficacité du développement des programmes Python, mais également réduire l'écriture de code inutile.
    • Un autre avantage de la fonction est qu'il s'agit en fait d'un module indépendant des autres codes externes. Si vous n'appelez pas la fonction manuellement lorsqu'un programme python est exécuté, alors. this La fonction ne sera pas exécutée. Lorsqu'une erreur survient dans une fonction, elle peut être facilement modifiée sans trop d'impact sur le fonctionnement du programme, et la modularisation est bien réalisée.
    • La fonction python peut également être directement enregistrée dans un fichier py puis importée en tant que module. De cette manière, une fonction python écrite de manière universelle peut être utilisée dans de nombreuses applications. . Parmi les différents programmes, les modules intégrés couramment utilisés et les bibliothèques tierces Python stockent en fait les fonctions une par une.
    • Tous les codes du système de gestion de bibliothèque :
    • 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("")

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

    Déclaration:
    Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer