déplacer les lettres à l'aide de l'ord et chr

Je suis en train de faire une fonction qui transforme chaque lettre de chaque mot vers la droite en valeur
et ces mots seront à partir d'une liste que je vais l'ouvrir en utilisant "ouvrir"de la fonction
J'ai écrit le code, et je suis confronté à quelques difficultés ici
voici mon code

def test():
value=eval(input("Value here!"))
with open ("word-text.txt","r") as f:
    for ord in (f):
        print (ord)
        for chr in ord:
            print (chr)
            #nice=(chr[len(ord)+value])
        ''.join([chr(ord(i)+2) for i in s])
        print (i)

c'est la sortie-je obtenir

Value here!2
apples

a
p
p
l
e
s


Traceback (most recent call last):
  File "<pyshell#54>", line 1, in <module>
    test()
  File "/Users/user/Desktop/Outlook(1)/lab6.py", line 59, in test
    ''.join([chr(ord(i)+2) for i in s])
NameError: global name 's' is not defined

la liste que j'ai les mots suivants
pommes
les oranges
la pastèque
kiwi
courgettes
la carotte
le gombo
jalapeno
poivre
concombre
banane
et quand j'utilise ce code

ef test():
value=eval(input("Value here!"))
with open ("word-text.txt","r") as f:
    for ord in (f):
        print (ord)
        for chr in ord:
            print (chr)
            nice=(chr[len(ord)+value])
            print (nice)

- Je obtenir cette sortie

Value here!2
apples

a
Traceback (most recent call last):
  File "<pyshell#56>", line 1, in <module>
    test()
  File "/Users/user/Desktop/Outlook(1)/lab6.py", line 58, in test
    nice=(chr[len(ord)+value])
IndexError: string index out of range
>>> 

Ce que je fais mal ici? et quel code est préférable d'utiliser, pour le faire fonctionner

Grâce

  • chr et ord les deux sont buit-dans les fonctions de, ne pas les utiliser comme noms de variable.
  • Avis de la stacktrace, lire l'erreur et la figure. Ces erreurs sont assez évidentes.
  • Pouvez-vous donner quelques entrées-sorties des exemples?
  • Alors, comment dois-je utiliser? Je veux dire, j'ai vu beaucoup d'utilisations pour l', mais, non d'entre eux ont travaillé pour moi, ou peut-être que j'ai raté quelque chose, comme pouvez-vous donner un exemple de la façon dont vous l'utiliser chr et de l'ord dans un code
  • disons que j'ai une liste de mots dans un fichier, ce fichier contient le mot "bonjour", et l'utilisateur a donné une valeur de 2 dans l'entrée • bonjour d'entrée = 2 Résultat = jgnnq il prend chaque lettre de chaque mot, puis ajoutez 2 lettres comme dans cet exemple, H>I>J
  • eval(input("Value here!")) Pas! Ne pas le faire. Si vous souhaitez obtenir des nombres entiers comme l'utilisation d'intrants int: int(input("Value here!")). Si vous souhaitez utiliser des flotteurs float. Si vous voulez prendre aucun python littéral(integer, float, string, etc la liste.) utilisation ast.literal_eval: import ast; ast.literal_eval(input("Value here!")).
  • quels sont les caractères présents dans vos paroles? ascii uniquement a-zA-Z?

InformationsquelleAutor CaVeMaN | 2013-10-28