Premier chatbot

Signed-off-by: Yohann D'ANELLO <ynerant@crans.org>
This commit is contained in:
Yohann D'ANELLO 2021-01-26 01:36:39 +01:00
commit 8ccb1bf085
Signed by: ynerant
GPG Key ID: 3A75C55819C8CF85
2 changed files with 101 additions and 0 deletions

1
.gitignore vendored Normal file
View File

@ -0,0 +1 @@
venv

100
main.py Normal file
View File

@ -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, 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()