[python] Gérer les fonctions en les mettant dans un dictionnaire (table de commande, table de fonction, pointeur de fonction)

introduction

★ J'y ai fait référence! ★

Notez que @shiracamus m'a dit que lorsque le nombre de fonctions augmentera, il sera plus facile à gérer si les fonctions sont placées dans un dictionnaire et converties en commandes.

https://qiita.com/mochihisa/items/2bb433636c4c615b0961#comment-f5565d1700921d4edc9f

Comment faire

Donnez au pointeur de fonction un nom comme une table de fonctions.

Vous pouvez voir la commodité par rapport à cet article (masochisme) Gérer les fonctions dans une liste

├── modules
│   └──logic.py
│ 
└─ main.py

modules/logic.py


def func1(word):
    print('Ici func1' + word)

def func2(word):
    print('Ici func2' + word)

def func3(word):
    print('Ici func3' + word)

def func4(word):
    print('Ici func4' + word)

def func5(word):
    print('Ici func5' + word)

def help_command():
    print("""\
func1 ----Appeler func1
func2 ----Appeler func2
func3 ----Appeler func3
func4 ----Appeler func4
func5 ----Appeler func5
    """)

COMMANDS = {
    "func1": func1,
    "func2": func2,
    "func3": func3,
    "func4": func4,
    "func5": func5,
}

main.py


import modules.logic as logic


logic.help_command()
logic.COMMANDS['func1']('est')
logic.COMMANDS['func2']('Yade')
logic.COMMANDS['func3']('C'estvrai')
logic.COMMANDS['func4']('Nyoro')
logic.COMMANDS['func5']('Daje')

Résultat d'exécution

$ python main.py

func1 ----Appeler func1
func2 ----Appeler func2
func3 ----Appeler func3
func4 ----Appeler func4
func5 ----Appeler func5
    
C'est func1
C'est func2
C'est func3
C'est func4
C'est func5

Recommended Posts

[python] Gérer les fonctions en les mettant dans un dictionnaire (table de commande, table de fonction, pointeur de fonction)
[python] Gérer les fonctions dans une liste
Créer une fonction en Python
Créer un dictionnaire en Python
Appuyez sur une commande en Python (Windows)
[Python] Temps d'exécution lorsqu'une fonction est saisie dans une valeur de dictionnaire
Précautions lors du décapage d'une fonction en python
Hash en Perl est un dictionnaire en Python
Dessiner un graphique d'une fonction quadratique en Python
Récupérer l'appelant d'une fonction en Python
Spécifiez une sous-commande comme argument de ligne de commande en Python
Recevez des données de dictionnaire à partir de programmes Python avec AppleScript
Comment exécuter une commande à l'aide d'un sous-processus en Python
J'ai implémenté une commande de remplacement de type Vim dans Slackbot #Python
Que signifie le dernier () dans une fonction en Python?
Prendre une capture d'écran en Python
Un programme polyvalent qui formate les chaînes de commande Linux avec python
Une fonction qui divise l'itérable en N morceaux en Python
Utiliser la fonction de rappel en Python
Fonction ntile (décile) en python
Créer un tableau de multiplication de chaque élément dans une feuille de calcul (Python)
Exécuter des commandes externes avec python
J'ai fait une commande pour générer un commentaire pour une table dans Django
Remplacer les fonctions de bibliothèque en Python
Créer un bookmarklet en Python
Pour renvoyer char * dans une fonction de rappel à l'aide de ctypes en Python
Modélisation de fonctions non linéaires en Python
Dessiner la fonction Yin en python
Fonction immédiate (lie) en python
Un mémo que j'ai écrit une fonction de base en Python en utilisant la récurrence
Évitez KeyError dans le dictionnaire python
Introduction d'une bonne méthode de gestion des connexions DB en Python
Exécution de commandes externes en Python
Dessinez un cœur en Python
Essayez d'exécuter une fonction écrite en Python à l'aide de Fn Project
Fonctions Python apprises avec la chimioinfomatique
Publier un message d'IBM Cloud Functions sur Slack en Python
Comment obtenir une chaîne à partir d'un argument de ligne de commande en python
J'ai écrit une fonction pour charger le script d'extension Git en Python
Une fonction qui mesure le temps de traitement d'une méthode en python
[Python] Qu'est-ce qu'une fonction zip?
Probablement dans un serpent Nishiki (Titre original: Peut-être en Python)
Ecrire une dichotomie en Python
Implémenter la fonction power.prop.test de R en python
Définition du type d'argument de fonction en python
Notation inclusive dans l'argument de la fonction Python
Créer un conteneur DI avec Python
Dessinez une matrice de diagramme de dispersion avec python
Ecrire une fonction AWS Lambda en Python
Ecrire des algorithmes A * (A-star) en Python
Mesurer le temps d'exécution de la fonction en Python
Dans la commande python, python pointe vers python3.8
Créer un fichier binaire en Python
[Python] Faire de la fonction une fonction lambda
Résoudre ABC036 A ~ C avec Python
Ecrire un graphique à secteurs en Python
Ecrire le plugin vim en Python