Bonjour, j'ai un problème dans mon code je cherce a résoudre ce bug mais j'y arrive pas.
Cette erreur survient seulement quand je modifie la liste
Erreur :
UnicodeDecodeError: 'charmap' codec can't decode byte 0x90 in position 21: character maps to <undefined>
Et le code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
 
import sys
import fileinput
 
 
def modifier():
    print("Quelle ligne voulez vous modifier ?")
    linea = input("> ")
    print("Nouveau nom de la tache ?")
    taskname = input("> ")
    print("La tache est elle finie : (y/n) ")
    done = str(input("> "))
    if done == "y":
        done = "☑"
    else:
        done = "☐"
    with open("to_do_list.txt", "r+", encoding='utf-8') as file:  # Crée la liste/l'alimente et l'associe a file
        l = [taskname, "     |      ", done]
        l1 = ''.join(l)
    file.close()
    tempFile = open("to_do_list.txt", 'a+', encoding='utf-8')
    for line in fileinput.input("to_do_list.txt"):
        if linea in line:
            print("d")
        else:
            print("d")
        tempFile.write(line.replace(linea, l1))
    tempFile.close()
    menu()
 
 
def lire():
    with open("to_do_list.txt", "r+", encoding='utf-8') as file:
        test = file.readlines()
        for i in test:
            print("-", i)
    file.close()
    print("Appuyer sur entrée pour retourner au menu")
    input("")
    menu()
 
 
def ajouter():
    print("Quelle tache voulez vous ajouter :")
    task = str(input("> "))
    print("La tache est elle finie : (y/n) ")
    done = str(input("> "))
    if done == "y":
        done = "☑"
    else:
        done = "☐"
    with open("to_do_list.txt", "a+", encoding='utf-8') as file:  # Crée la liste/l'alimente et l'associe a file
        l = [task, "     |      ", done, "\n"]
        file.writelines(l)
    file.close()
    menu()
 
 
def menu():
    print("       Menu :      ")
    print("1. Ouvrir la liste")
    print("2. Ajouter un élément")
    print("3. Modifier un élément")
    print("4. Quitter")
    selectmenu = int(input("> "))
    if selectmenu == 1:
        lire()
    elif selectmenu == 2:
        ajouter()
    elif selectmenu == 3:
        modifier()
    elif selectmenu == 4:
        sys.exit()
    else:
        print("Tu n'as pas sélectionné 1, 2, 3 ou 4.")
        menu()
 
 
menu()
Merci pour votre aide