Il me semble que j'utilise le 2.7
Merci sa marche (juste dans le programme mais c'est vrai que l'erreur était bete (de toute façon toutes les erreurs sont bêtes ^^)
Voilà mon début de code (pour l'instant je ne fais que 1 décalage mais vu que sa marche pas, pas la peine de continuer:
from string import maketrans
decalage = input("Choisissez le decalage : ")
d = decalage
if d == 0
no crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
conversion = maketrans(nocrypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 1
no crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "BCDEFGHIJKLMNOPQRSTUVWXYZAbcdefghijklmnopqrstuvwxyza"
conversion = maketrans(nocrypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
# On bloque le programme avant la fermeture
raw_input('\n\nFin\n\n')
Donc je me suis dit que peut etre c'était du au résultat:
En même temps si tu ne connais pas les bases de Python, ça ne risque pas de fonctionner !
Mais si ton but final est de faire un formulaire sur une page HTML, le JavaScript te sera plus utile (ou intéressant) dans un premier temps.
Le seul conseil que l'on puisse te donner actuellement, c'est de te trouver un bon tutoriel et d'apprendre l'un de ces langages. Le SDZ est la pour ça !
Déjà petite question, pourquoi utiliser une variable "decalage" pour ensuite la renommer "d" ? As tu déjà essayer d'utiliser tout de suite la variable "d" pour stocker la valeur d'input? Mais bon, ça ne changerai pas grand chose à ton code.
Pour mieux comprendre la fonction stringmaketrans, regarde peut être ceci.
Et lis le tutoriel sur python du sdz, pas de simple vidéo sur python.
On m'a conseillé le python donc je le fait en python et maintenant on me dit qu'il faut mieux faire du javascript ... ^^'
Ici, c'est le forum Python, donc on parle essentiellement de Python. Alors oui, tout ce que tu sembles vouloir est faisable en Python, mais si tu veux proposer une page Web (avec formulaire) qui permettrai aux visiteurs de crypter un texte de leur choix, juste pour démontrer un algorithme, alors il vaut mieux que ce soit leurs ordinateurs qui travail plutôt que ton serveur.
Actuellement et de mon point de vue, il y a trois langages indispensables pour faire un site internet : HTML, CSS et JavaScript. Tous ces langages sont interprétés par les navigateurs internet des clients. Enfin bref, si tu veux faire un site internet il faut que tu commences par apprendre ces langages et après tu choisiras le langage (ou les langages) à utiliser du coté serveur (Python ou autres...).
Ben j'ai regardé les pythonneries, je me suis appuyé sur des codes sources et j'ai monté sa ...
On m'a conseillé le python donc je le fait en python et maintenant on me dit qu'il faut mieux faire du javascript ... ^^'
non vaut mieux faire du python
pour faire un décalage il suffit d'insérer des espaces
from string import maketrans
decalage = input("Choisissez le decalage : ")
d = decalage
if d == 0:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 1:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "BCDEFGHIJKLMNOPQRSTUVWXYZAbcdefghijklmnopqrstuvwxyza"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
# On bloque le programme avant la fermeture
raw_input('\n\nFin\n\n')
quelques détail
après les if il faut mettre des :
une variable ne peut pas contenir d'espace donc c'est nocrypt ou no_crypt mais pas no_crypt
tu doit surveiller tes noms de variables toujours les appeler pareil sinon python te remontera une erreur
voilà le code que j'ai livré n'est volontairement pas testé à toi de jouer et de décoder les erreurs que python te renverra
Personne ne semble l'avoir dit, alors je vais le faire : pourquoi faire une interface web ?
Je pense que les examinateurs seront tout aussi contents si tu mets à disposition ton script python avec l'usage. Ils pourront fouiner dans le code source, faire des tests bien plus facilement qu'avec l'interface web, etc.
Actuellement et de mon point de vue, il y a trois langages indispensables pour faire un site internet : HTML, CSS et JavaScript.
pour faire un site basique il n'y a que le HTML qui soit vraiement nécessaire vu le mal qu'il a en python j'estime que ce serait un mauvais conseil de lui dire d'apprendre le javascript. Les erreurs renvoyées par javascript sont beaucoup plus cryptique que celles renvoyées par python.
Et la syntaxe est nettement plus compliquée.
Bon d'accord merci xcombelle, j'ai compris les erreurs, voici mon code complet qui MARCHE Je vous laisse l'admirer (c'est sur je sais qu'il est bien trop log et qu'on peux le simplifier, j'ai pas trouvé comment donc j'ai laissé ! )
from string import maketrans
decalage = input("Choisissez le decalage : ")
d = decalage
if d == 0:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 1:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "BCDEFGHIJKLMNOPQRSTUVWXYZAbcdefghijklmnopqrstuvwxyza"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 2:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "CDEFGHIJKLMNOPQRSTUVWXYZABcdefghijklmnopqrstuvwxyzab"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 3:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "DEFGHIJKLMNOPQRSTUVWXYZABCdefghijklmnopqrstuvwxyzabc"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 4:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "EFGHIJKLMNOPQRSTUVWXYZABCDefghijklmnopqrstuvwxyzabcd"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 5:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "FGHIJKLMNOPQRSTUVWXYZABCDEfghijklmnopqrstuvwxyzabcde"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 6:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "GHIJKLMNOPQRSTUVWXYZABCDEFghijklmnopqrstuvwxyzabcdef"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 7:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "HIJKLMNOPQRSTUVWXYZABCDEFGhijklmnopqrstuvwxyzabcdefg"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 8:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "IJKLMNOPQRSTUVWXYZABCDEFGHijklmnopqrstuvwxyzabcdefgh"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 9:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "JKLMNOPQRSTUVWXYZABCDEFGHIjklmnopqrstuvwxyzabcdefghi"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 10:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "KLMNOPQRSTUVWXYZABCDEFGHIJklmnopqrstuvwxyzabcdefghij"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 11:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "LMNOPQRSTUVWXYZABCDEFGHIJKlmnopqrstuvwxyzabcdefghijk"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 12:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "MNOPQRSTUVWXYZABCDEFGHIJKLmnopqrstuvwxyzabcdefghijkl"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 13:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "NOPQRSTUVWXYZABCDEFGHIJKLMnopqrstuvwxyzabcdefghijklm"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 14:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "OPQRSTUVWXYZABCDEFGHIJKLMNopqrstuvwxyzabcdefghijklmn"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 15:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "PQRSTUVWXYZABCDEFGHIJKLMNOpqrstuvwxyzabcdefghijklmno"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 16:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "QRSTUVWXYZABCDEFGHIJKLMNOPqrstuvwxyzabcdefghijklmnop"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 17:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "RSTUVWXYZABCDEFGHIJKLMNOPQrstuvwxyzabcdefghijklmnopq"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 18:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "STUVWXYZABCDEFGHIJKLMNOPQRstuvwxyzabcdefghijklmnopqr"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 19:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "TUVWXYZABCDEFGHIJKLMNOPQRStuvwxyzabcdefghijklmnopqrs"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 20:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "UVWXYZABCDEFGHIJKLMNOPQRSTuvwxyzabcdefghijklmnopqrst"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 21:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "VWXYZABCDEFGHIJKLMNOPQRSTUvwxyzabcdefghijklmnopqrstu"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 22:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "WXYZABCDEFGHIJKLMNOPQRSTUVwxyzabcdefghijklmnopqrstuv"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 23:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "XYZABCDEFGHIJKLMNOPQRSTUVWxyzabcdefghijklmnopqrstuvw"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 24:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "YZABCDEFGHIJKLMNOPQRSTUVWXyzabcdefghijklmnopqrstuvwx"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
if d == 25:
no_crypt = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"
crypt = "ZABCDEFGHIJKLMNOPQRSTUVWXYzabcdefghijklmnopqrstuvwxy"
conversion = maketrans(no_crypt, crypt)
a_crypte = raw_input().translate(conversion)
print a_crypte
# On bloque le programme avant la fermeture
raw_input('\n\nFin\n\n')
Après ya la possibilité d'intégrer le mode de cryptage et le mode décryptage dans le meme code?
En gros au début sa met :
crypter=1
décrypter=2
quitter=3
(Il ne faudrait faire que trois boucles au final?)
Utilise une boucle! A la place de ifd==0:, remplace le 0 par une variable que tu incrémente à chaque passage de la boucle. Regarde vraiment le tuto de prolix sur le sdz.
s = input("Mon programme est super, non ?").lower()
if s in ("lol", "mdr", "n", "no", "non", "nop", "mouarf!", "xD"):
print("Pardon... :(")
exit() # <- *_*
...
Python c'est bon, mangez-en.