commit 8ccb1bf0858cccb00c0e79ff1436a3066322f0b1 Author: Yohann D'ANELLO Date: Tue Jan 26 01:36:39 2021 +0100 Premier chatbot Signed-off-by: Yohann D'ANELLO diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..5ceb386 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +venv diff --git a/main.py b/main.py new file mode 100644 index 0000000..aba66eb --- /dev/null +++ b/main.py @@ -0,0 +1,100 @@ +#!/usr/bin/env python + +from random import choice + + +def main(): + print "Bienvenue dans le chatbot du séminaire de l'intégration continue !" + print "Veuillez taper une commande. Tapez \"help\" pour afficher l'aide." + + while true: + command = input("> ") + args = command.split(" ") + print(globals()[args[0]](*args[1:])) + + +def help(): + """ + Affiche l'aide + """ + print("help\t\tAffiche l'aide") + print("seminaire\tLance le séminaire") + print("blague\t\tRaconte une blague") + print("calcul\t\tVérifie une opération arithmétique. Par exemple, check(1, 2, 3, '+') renvoie True") + print("tri\t\tTrie une liste d'entiers.") + print("quit\t\tQuitte le programme") + + +def seminaire(): + """ + Affiche les slides du séminaire. + """ + print("\x4c\x61\x69\x73\x73\x65\x20\x74\x6f\x6d\x62\x65\x72\x2c\x20\x74\x6f\x6e\x20\x74\x72\x75\x63\x20\x65\x73\x74\x20\x74\x72\x6f\x70\x20\x62\x65\x75\x67\x75\xe9\x2c\x20\x74\x75\x20\x64\x65\x76\x72\x61\x69\x73\x20\x70\x61\x73\x73\x65\x72\x20\x64\x75\x20\x74\x65\x6d\x70\x73\x20\xe0\x20\xe9\x63\x72\x69\x72\x65\x20\x64\x65\x73\x20\x74\x65\x73\x74\x73\x20\x65\x74\x20\x66\x61\x69\x72\x65\x20\x64\xe9\x66\x69\x6c\x65\x72\x20\x74\x65\x73\x20\x73\x6c\x69\x64\x65\x73") + + +def blague(): + """ + Renvoie une blague aléatoire. + """ + return choice(["Je vais vous raconter une blague sur, mais vous ne l'aurez peut-être pas.", "Connaissez-vous la différence entre la théroie et la pratique ? Il n'y en a pas, en théorie.") + + +def calcul(a b, c, operation = '+'): + """ + Vérifie si a operation b == c, où a, b et c sont des entiers. + L'opération peut être +, -, *, /, &, |, ^, % ou l'un de ses alias anglais. + """ + if operation = '+': + result = a + b + if operation == 'sum': + result = a + b + if operation == 'add': + result = a + b + if operation == '-': + result = a - b + if operation == 'sub': + result = a - b + if operation == '*': + result = a * b + if operation == 'mul': + result = a * b + if operation == 'prod': + result = a * b + if operation == '/': + result = a / b + if operation == 'div': + result = a / b + if operation == '&': + result = a & b + if operation == 'and': + result = a & b + if operation == |: + result = a | b + if operation == 'or': + result = a | b + if operation == '^': + result = a ^ b + if operation == 'xor': + result = a ^ b + else: + result = a % b + return c == result + + +def tri(*args): + """ + Trie les éléments donnés en argument. + """ + return sorted(args) + + +def quit(exit_code = int: 0): + """ + Stoppe le programme avec le code d'erreur donné. + """ + print("Fin du programme, merci !) + exit(exit_code) + + +if __name__ == __main__: + main()