Bonjour @ tous,

Je suis sur un projet de conversion d'un script bash en python, mais j'ai un problème avec la boucle while.

Voici une partie du code que je cherche à convertir:
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
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
#!/bin/bash
 
 
#Variables couleurs
noir='\e[0;30m'
gris='\e[1;30m'
rougefonce='\e[0;31m'
rose='\e[1;31m'
vertfonce='\e[0;32m'
vertclair='\e[1;32m'
orange='\e[0;33m'
jaune='\e[1;33m'
bleufonce='\e[0;34m'
bleuclair='\e[1;34m'
violetfonce='\e[0;35m'
violetclair='\e[1;35m'
cyanfonce='\e[0;36m'
cyanclair='\e[1;36m'
grisclair='\e[0;37m'
blanc='\e[1;37m'
neutre='\e[0;m'
 
 
 
echo -e "${bleufonce}###########################${neutre}"
echo -e "${bleufonce}#${neutre} ${vertclair}Bienvenu dans DumpEdit.${neutre} ${bleufonce}#${neutre}"
echo -e "${bleufonce}###########################${neutre}"
echo ""
echo ""
echo ""
echo -e "${jaune}Fonctions PSA:${neutre}"
echo -e "   *${cyanclair}FAP OFF EDC16C34${neutre} ${orange}(Format BDM et OBD)${neutre}"
echo -e "   *${cyanclair}IMMO OFF SID801${neutre} ${orange}(Sur EEPROM)${neutre}"
echo -e "   *${cyanclair}IMMO VIERGE SID801${neutre} ${orange}(Sur EEPROM)${neutre}"
echo -e "   *${cyanclair}IMMO OFF EDC15C2/C7${neutre} ${orange}(Sur Flash)${neutre}"
echo -e "   *${cyanclair}EGR CLOSE EDC16C34${neutre} ${orange}(Format BDM et OBD)${neutre}"
echo -e "   *${cyanclair}IMMO OFF EDC17C10${neutre} ${orange}(Sur EEPROM)${neutre}"
echo -e "   *${cyanclair}VIERGE PIN EDC17C10${neutre} ${orange}(Sur EEPROM)${neutre}"
echo -e "   *${cyanclair}VIERGE EEPROM 95128 BSI JC EVO${neutre}"
echo ""
echo -e "${jaune}Fonctions FCA:${neutre}"
echo -e "   *${cyanclair}EGR OFF 1.3 MultiJet 70cv${neutre}"
echo -e "   *${cyanclair}EGR OFF 1.3 MultiJet 75 et 90cv${neutre}"
echo ""
echo -e "${jaune}Fonctions VAG:${neutre}"
echo -e "   *${cyanclair}FAP OFF EDC16U31${neutre} ${orange}(Format BDM et OBD)${neutre}"
echo ""
echo -e "${jaune}Fonctions BMW:${neutre}"
echo -e "   *${cyanclair}IMMO OFF EDC17C06${neutre}"
echo -e "   *${cyanclair}IMMO OFF EDC16CP35${neutre}"
echo ""
echo ""
echo ""
echo -e "${cyanclair}Choisissez la marque de votre véhicule.${neutre}"
echo ""
echo -e "${cyanclair}Pour PSA tapez :${neutre} ${orange}1${neutre}     ${cyanclair}Pour FCA tapez :${neutre} ${orange}2${neutre}"
echo -e "${cyanclair}Pour VAG tapez :${neutre} ${orange}3${neutre}     ${cyanclair}Pour BMW tapez :${neutre} ${orange}4${neutre}"
echo ""
echo -e "${cyanclair}Pour quitter tapez :${neutre} ${orange}quit${neutre}     ${cyanclair}Pour chercher la compatibilité d'un ECU tapez :${neutre} ${orange}find${neutre}"
echo ""
echo ""
read marque
 
while [ $marque = "find" ]
do
	elinks https://www.easyecu.com/Search?q=
	echo ""
        echo ""
        echo -e "${cyanclair}Que voulez vous faire?${neutre}"
        echo -e "${cyanclair}Pour retourner à l'acceuil tapez :${neutre} ${orange}index${neutre}     ${cyanclair}Pour quitter tapez :${neutre} ${orange}quit${neutre}"
        read marque
done
 
while [ $marque = "index" ]
do
	echo ""
	echo ""
	echo -e "${jaune}Fonctions PSA:${neutre}"
	echo -e "   *${cyanclair}FAP OFF EDC16C34${neutre} ${orange}(Format BDM et OBD)${neutre}"
	echo -e "   *${cyanclair}IMMO OFF SID801${neutre} ${orange}(Sur EEPROM)${neutre}"
	echo -e "   *${cyanclair}IMMO VIERGE SID801${neutre} ${orange}(Sur EEPROM)${neutre}"
	echo -e "   *${cyanclair}IMMO OFF EDC15C2/C7${neutre} ${orange}(Sur Flash)${neutre}"
	echo -e "   *${cyanclair}EGR CLOSE EDC16C34${neutre} ${orange}(Format BDM et OBD)${neutre}"
	echo -e "   *${cyanclair}IMMO OFF EDC17C10${neutre} ${orange}(Sur EEPROM)${neutre}"
	echo -e "   *${cyanclair}VIERGE PIN EDC17C10${neutre} ${orange}(Sur EEPROM)${neutre}"
	echo -e "   *${cyanclair}VIERGE EEPROM 95128 BSI JC EVO${neutre}"
	echo ""
	echo -e "${jaune}Fonctions FCA:${neutre}"
	echo -e "   *${cyanclair}EGR OFF 1.3 MultiJet 70cv${neutre}"
	echo -e "   *${cyanclair}EGR OFF 1.3 MultiJet 75 et 90cv${neutre}"
	echo ""
	echo -e "${jaune}Fonctions VAG:${neutre}"
	echo -e "   *${cyanclair}FAP OFF EDC16U31${neutre} ${orange}(Format BDM et OBD)${neutre}"
	echo ""
	echo -e "${jaune}Fonctions BMW:${neutre}"
        echo -e "   *${cyanclair}IMMO OFF EDC17C06${neutre}"
	echo -e "   *${cyanclair}IMMO OFF EDC16CP35${neutre}"
	echo ""
	echo ""
	echo ""
	echo -e "${cyanclair}Choisissez la marque de votre véhicule.${neutre}"
	echo ""
	echo -e "${cyanclair}Pour PSA tapez :${neutre} ${orange}1${neutre}     ${cyanclair}Pour FCA tapez :${neutre} ${orange}2${neutre}"
	echo -e "${cyanclair}Pour VAG tapez :${neutre} ${orange}3${neutre}     ${cyanclair}Pour BMW tapez :${neutre} ${orange}4${neutre}"
	echo ""
	echo -e "${cyanclair}Pour quitter tapez :${neutre} ${orange}quit${neutre}"
	echo ""
	echo ""
	read marque
done



Et voici mon début de conversion:
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
#!/bin/python
 
 
import os
from colorama import Fore, Back, Style
 
print(Fore.WHITE + Back.LIGHTBLUE_EX + 'Bienvenue dans ' + Fore.RED + Back.LIGHTBLUE_EX + 'DumpEdit' + Style.RESET_ALL)
print()
print()
print()
print(Fore.YELLOW + 'Fonctions PSA:' + Fore.RESET)
print(Fore.CYAN + '   *FAP OFF EDC16C34 ' + Fore.RED + '(Format BDM et OBD)' + Fore.RESET)
print(Fore.CYAN + '   *IMMO OFF SID801 ' + Fore.RED + '(Sur EEPROM)' + Fore.RESET)
print(Fore.CYAN + '   *IMMO VIERGE SID801 ' + Fore.RED + '(Sur EEPROM)' + Fore.RESET)
print(Fore.CYAN + '   *IMMO OFF EDC15C2/C7 ' + Fore.RED + '(Sur FLASH)' + Fore.RESET)
print(Fore.CYAN + '   *EGR CLOSE EDC16C34 ' + Fore.RED + '(Format BDM et OBD)' + Fore.RESET)
print(Fore.CYAN + '   *IMMO OFF EDC17C10 ' + Fore.RED + '(Sur EEPROM)' + Fore.RESET)
print(Fore.CYAN + '   *VIERGE PIN EDC17C10 ' + Fore.RED + '(Sur EEPROM)' + Fore.RESET)
print(Fore.CYAN + '   *VIERGE EEPROM 95128 BSI JC EVO' + Fore.RESET)
print()
print(Fore.YELLOW + 'Fonctions FCA:' + Fore.RESET)
print(Fore.CYAN + '   *EGR OFF 1.3 MultiJet 70cv' + Fore.RESET)
print(Fore.CYAN + '   *EGR OFF 1.3 MultiJet 75cv et 90cv' + Fore.RESET)
print()
print(Fore.YELLOW + 'Fonctions VAG:' + Fore.RESET)
print(Fore.CYAN + '   *FAP OFF EDC16U31 ' + Fore.RED + '(Format BDM et OBD)' + Fore.RESET)
print()
print(Fore.YELLOW + 'Fonctions BMW:' + Fore.RESET)
print(Fore.CYAN + '   *IMMO OFF EDC17C06' + Fore.RESET)
print(Fore.CYAN + '   *IMMO OFF EDC16CP35' + Fore.RESET)
print()
print()
print()
print(Fore.CYAN + 'Choisissez la marque de votre véhicule' + Fore.RESET)
print()
print(Fore.CYAN + 'Pour PSA tapez : ' + Fore.YELLOW + '1' + '     ' + Fore.CYAN + 'Pour FCA tapez : ' + Fore.YELLOW + '2' + Fore.RESET)
print(Fore.CYAN + 'Pour VAG tapez : ' + Fore.YELLOW + '3' + '     ' + Fore.CYAN + 'Pour BMW tapez : ' + Fore.YELLOW + '4' + Fore.RESET)
print()
print(Fore.CYAN + 'Pour quitter tapez : ' + Fore.YELLOW + 'quit' + Fore.RESET)
print()
print()
 
choix = input()
 
while choix == index:    
    print('ok good')

Mon problème est que j'ai droit à une belle erreur me disant que le nom index n'est pas défini alors que le but est justement de définir ce que le programme doit faire dans la boucle while.


Désolé si ma question vous semble idiote, mais les recherches que je fais me mènent a chaque fois sur des exemple mathématique que je comprend mais ce n'est pas mon cas de figure et je suis un réel débutant en programmation.

Merci par avance pour votre aide.

Cordialement.
Jon.