diff --git a/tp1.py b/tp1.py
new file mode 100644
index 0000000000000000000000000000000000000000..9a0cb1eedbd3a0ec7a84d825044b8f1128143cf7
--- /dev/null
+++ b/tp1.py
@@ -0,0 +1,99 @@
+#nom:gantchou koffi
+#mi13
+# anagrammes
+# 16/01
+#METHODE SPLIT
+
+
+#2 la methode split supprime l'element pris en parametre dans la chaine
+# >>> s= "la méthode split est parfois bien utile"
+# >>> s.split(' ')
+# ['la', 'méthode', 'split', 'est', 'parfois', 'bien', 'utile']
+# >>> s.split('e')
+# ['la méthod', ' split ', 'st parfois bi', 'n util', '']
+# >>> s.split('é')
+# ['la m', 'thode split est parfois bien utile']
+# >>> s.split()
+# ['la', 'méthode', 'split', 'est', 'parfois', 'bien', 'utile']
+# >>> s.split('')
+# Traceback (most recent call last):
+#   File "<stdin>", line 1, in <module>
+# ValueError: empty separator
+# >>> s.split('split')
+# ['la méthode ', ' est parfois bien utile']
+
+#3 la methode split ne modifie pas la chaine a laquelle elle s'applique
+
+#METHODE JOIN
+# la methode join ne modifiie pas la chaine a laquelle elle s'applique
+
+
+#la methode sort ne s'applique que sur des listes
+# de meme que join
+
+def join(carac:str,l:list[str])->str:
+    """ à_remplacer_par_ce_que_fait_la_fonction
+
+    Précondition :
+    Exemple(s) :
+    $$$ join('.', ['raymond', 'calbuth', 'ronchin', 'fr'])
+    'raymond.calbuth.ronchin.fr'
+    
+    """
+    res=''
+    for i in range(len(l)-1):
+        res+=l[i]+carac
+    res=res+l[len(l)-1]
+    
+    return res
+        
+def sort(s: str) -> str:
+    """
+    Renvoie une chaîne de caractères contenant les caractères de `s` triés dans l'ordre croissant.
+
+    Précondition: aucune
+
+    Exemples:
+
+    $$$ sort('timoleon')
+    'eilmnoot'
+    """
+    l=list(s)
+    l.sort()
+    v="".join(l)
+    return v
+    
+def sont_anagrammes(s1: str, s2: str) -> bool:
+    """
+    Renvoie True si s1 et s2 sont anagrammatiques, False sinon.
+
+    Précondition: aucune
+
+    Exemples:
+
+    $$$ sont_anagrammes('orange', 'organe')
+    True
+    $$$ sont_anagrammes('orange','Organe')
+    False
+    """
+    anag1=sort(s1)
+    anag2=sort(s2)
+    return anag1==anag2
+
+def sont_anagrammes2(s1:str,s2:str)->bool:
+    """ à_remplacer_par_ce_que_fait_la_fonction
+
+    Précondition :
+    Exemple(s) :
+    $$$ sont_anagrammes2('orange', 'organe')
+    True
+    $$$ sont_anagrammes2('orange','Organe')
+    False
+    
+    """
+    
+    
+    
+
+
+