En ce moment, je travaille avec un fichier txt avec cette information:Python comment modifier la valeur d'une variable à la volée
["corrector", "Enabled"]
["Inteligencia", "Enabled"]
Puis dans mon programme python il charge que les données à la très beggining, de cette façon:
for line in open("menu.txt", 'r'):
retrieved = json.loads(line)
if retrieved[0] == "corrector":
corrector = retrieved[1]
if retrieved[0] == "Inteligencia":
Inteligencia = retrieved[1]
jusqu'à présent, il fonctionne parfaitement, mais comme cela est un bot de chat, je veux rendre possible de changer la valeur de cette variable directement à partir du chat et j'ai essayé ce code quand je l'appelle "! Activer le correcteur" dans le chat. Cela fonctionne aussi, et si j'ouvre le fichier .txt je peux voir la valeur qui a déjà été changée. Le vrai problème est que python n'a pas semblé accepter que j'ai changé une variable, et il pense toujours qu'il est "désactivé" alors qu'il est déjà "activé". Il ne lira pas la variable comme "activé" jusqu'à ce que je redémarre le programme. Je me demandais s'il existe une option d'actualisation pour les variables ou une solution de contournement pour modifier la valeur d'une variable à la volée et faire durer l'effet sans redémarrage.
duplication possible de [variable dynamique] (http://stackoverflow.com/questions/10963804/dynamic-variable) – Marcin
Les variables ne sont pas liées à leur origine; il semble y avoir une incompréhension fondamentale de ce qu'est une «variable». Vous devez lire le fichier à nouveau. – Izkata
duplication possible de [Comment créer une quantité inconnue de variables en python] (http://stackoverflow.com/questions/17685199/how-to-create-an-unknown-amount-of-variables-in-python) – abarnert