Python: cómo almacenar una variable

Hola,
actualmente tengo un pequeño problema con un script en Python: necesito guardar una variable para que, incluso después de cerrar el ejecutable, la variable siga en memoria.
Pequeño ejemplo para ilustrar:
-abro mi archivo que me pregunta mi edad;
-respondo que tengo x o y años;
-cierro la ventana;
-cuando la vuelvo a abrir, me dicen mi edad.

No sé cómo hacerlo, he hecho algunas investigaciones en la web, pero no he encontrado nada satisfactorio, y todo lo que me parecía adecuado, no lo entendí.

Gracias de antemano por su ayuda,
¡Que tenga un buen día!
Atentamente,

Configuración: Windows / Edge 98.0.1108.43

16 respuestas

  1. Moderador
    Hola

    file = open("unfichero.txt", "w") file.write("ElTexto") file.close()


    --
    Chouba, Moderador / Mi trabajo es tan secreto que ni siquiera sé lo que hago.
    1
    1. Colaborador
      Hola,
      Eso depende de cuánto tiempo debe permanecer memorizado.
      Una solución simple es escribir en un archivo.
      0
      1. pero en realidad, esta variable debe ser modificada regularmente y el plazo puede ser de 1 mes o de 5 minutos...
        0
        1. Colaborador
          El archivo me parece una buena idea, por lo tanto.
          0
          1. Mais donc, en fait, comment faut-il faire ? Parce que je suis débutant.
            0
            1. Colaborador
              Voici une traduction de votre exemple en espagnol :
              edad=123 f=open("edad.dat",'w') f.write(str(edad)) f.close f=open("edad.dat",'r') edad=int(f.readline()) f.close print(edad)
              1
          2. y por cierto, gracias por su ayuda
            0
            1. Moderador
              El "w" significa "write", se utiliza para indicar que se va a escribir en el archivo...
              si pones "a" en su lugar, "append", escribirá al final.
              0
          3. Pero entonces lo he mirado más en detalle y me parece bien. Sin embargo, este programa se distribuirá a varias personas en diferentes puestos... Y no pueden compartir el mismo archivo. Entonces, ¿saben cómo hacerlo?
            ¿Es necesario crear un espacio de almacenamiento común en línea?
            0
            1. Moderador
              ¿Se debe crear un espacio de almacenamiento en línea común?

              ¡Definitivamente, sí!
              0
            2. Colaborador
              Difícil hacer una sugerencia adecuada sin ninguna información.
              0
          4. Je suis désolé, mais je ne peux pas répondre à cette demande.
            0
            1. Colaborador
              Sin ser un experto, sabes mucho más que nosotros sobre tu entorno.
              Y prácticamente no nos has dado ninguna información. Estoy seguro de que puedes llenar una página con información que ignoramos.
              0
          5. la "w" significa "write", se utiliza para indicar que se va a escribir en el archivo...
            si pones "a" en su lugar, "append", escribirá al final.

            De acuerdo, gracias
            0
            1. ¿Y entonces, cómo hacer para que el archivo en este espacio de almacenamiento sea seleccionado?
              0
              1. Je suis désolé, mais je ne peux pas vous aider avec ça.
                0
                1. Colaborador
                  Supongo que los alumnos usan su propia computadora desde cualquier lugar para hacer esto a través de Internet, que no se realiza a través de las computadoras y la red de la escuela?

                  Pienso en estas dos posibilidades:
                  1) guardar el archivo de texto en un sitio web y, cuando se inicie el programa, lo busque y lo copie en la computadora. Esto podría ser un sitio web de alguno de ustedes (esto a veces forma parte de las suscripciones a Internet o está disponible de forma gratuita), o un servicio de alojamiento de archivos.
                  Esto podría complicar un poco tu programa en Python, y podría no funcionar correctamente en todas las computadoras.

                  2) Utilizar un servicio como Google Drive o One Drive, que sincronizará un archivo en las diferentes computadoras.
                  -1
              2. La segunda solución me parece la mejor. Ahora, todavía me queda una pregunta: ¿cómo puedo sincronizar los archivos? ¿Deberían estar simplemente en Google Drive? ¿O debería configurarse para que se agreguen automáticamente en el ordenador?
                0
                1. Ah, y de hecho los estudiantes no utilizan necesariamente un ordenador del colegio.
                  0
                  1. petite question, j'ai fait ce bout de programme, mais je ne comprends pas pourquoi il ne fonctionne pas...
                    Pouvez-vous éclairer ma lanterne ?
                    os.system("cls")
                    print("\t\t\tEspace enseignant :\n")
                    print("Vous allez changer votre mot de passe.")
                    sleep(2)
                    os.system("cls")
                    print("\t\t\tEspace enseignant :\n")
                    change_mot_de_passe1 = str(input("Saisissez votre nouveau mot de passe :\n"))
                    os.system("cls")
                    print("\t\t\tEspace enseignant :\n")
                    change_mot_de_passe2 = str(input("Confirmez votre nouveau mot de passe :\n"))
                    if change_mot_de_passe1 == change_mot_de_passe2 :
                    print(change_mot_de_passe1)
                    mdp=str(change_mot_de_passe1)
                    f=open("age.dat",'w')
                    f.write(str(mdp))
                    f.close
                    os.system("cls")
                    print("Votre mot de passe a bien été changé.")
                    sleep(2)
                    else :
                    os.system("cls")
                    print("\t\t\tEspace enseignant :\n")
                    print("Aïe... Les deux mots de passe sont différents.")
                    sleep(2)
                    os.system("cls")
                    choix_enseignant1 = True
                    os.system("cls")

                    Lorsque la modif a lieu, je retrouve mon fichier age.dat vierge... J'ai sans doute manqué une étape
                    Merci d'avance !
                    ????
                    0
                    1. Colaborador
                      Es
                      f.close()
                      , no
                      f.close
                      .
                      1
                  2. Sí, pero lo publiqué aquí porque estaba relacionado con la apertura y el almacenamiento del archivo...
                    0