voici donc mon code
1.first idea 2.second idea 3.third idea ... N. N idea.
Lorsque je l'exécute, il affiche une liste, par exemple:
[first idea , second idea , third idea, ...]
Que puis-je faites-le lorsque je lance le programme, il affichera:
list_of_idea = [] while True: ask = input("What is your new idea ? :") list_of_idea.append(ask) print(list_of_idea)
Et si je redémarre le programme, les idées resteront toujours dans la liste
5 Réponses :
Les idées ne peuvent pas rester dans la liste car une liste est créée pendant le Runtime. Si vous voulez écrire les idées quelque part, le moyen le plus simple est probablement de l'écrire dans un fichier * .txt
.
with open("idea_list.txt", "r") as file: line = file.readline() while line: count = int(line[0]) line = file.readline() file.close() with open("idea_list.txt", "a") as file: list_of_ideas = [] while True: count += 1 ask = input("What is your new idea?\n") list_of_ideas.append(ask) print(f"{count}) {ask}") file.write(f"{count}) {ask}\n")
Après l'avoir exécuté une fois le fichier idea_list.txt doit être créé dans le même répertoire que le script.
Une meilleure façon de les organiser serait de voir quelle idée vous étiez en dernier et de commencer à compter à partir de là peut être fait en faisant ceci:
with open("idea_list.txt", "a") as file: list_of_ideas = [] count = 0 while True: count += 1 ask = input("What is your new idea?\n") list_of_ideas.append(ask) print(f"{count}) {ask}") file.write(f"{count}) {ask}\n")
Oui, mais le fichier doit être créé en premier. Lorsque vous exécutez le programme une fois, vous devez le lire et voir quelle idée vous êtes depuis la dernière fois que vous exécutez votre programme.
Je pense que c'est mieux maintenant :)
vous pouvez utiliser la longueur de votre liste pour déterminer l'index actuel:
['1.first idea', '2.second idea' ...]
sortie:
list_of_idea = [] while True: ask = input("What is your new idea ? :") list_of_idea.append(f'{len(list_of_idea) + 1}.{ask}') print(list_of_idea)
si vous souhaitez persister la liste même si vous fermez le programme que vous devez utiliser un fichier pour enregistrer la liste ou une base de données.
vous pouvez enregistrer la list_of_idea au format pickle lorsque vous souhaitez la sauvegarder. Après cela, vous pouvez charger le pickle qui contient la liste des idées
import pickle list_of_idea = [] while True: ask = input("What is your new idea ? :") count = len(list_of_idea) list_of_idea.append( str(count+1) + '. ' + ask) action = input("enter yes or no, for saving list") if action == 'yes': with open('idea.pkl', 'wb') as f: pickle.dump(list_of_idea, f) break else: pass print(list_of_idea) #op ['1. how', '2. are', '3. you']
Je suggère d'écrire une méthode distincte pour imprimer votre liste d'idées dans un format choisi. Quelque chose comme le code ci-dessous devrait fonctionner pour vous.
def print_ideas(ideas): for index, idea in enumerate(list_of_ideas): print("{}. {}".format(index+1, idea)) list_of_idea = [] while True: ask = input("What is your new idea ? :") list_of_idea.append(ask) print_ideas(list_of_idea)
La solution complète devrait ressembler à ceci:
def print_ideas(ideas): for index, idea in enumerate(list_of_ideas): print("{}. {}".format(index+1, idea)) list_of_ideas = ['First idea', 'second idea', 'Third idea'] print_ideas(list_of_ideas)
Ce cas imprimera chaque "1. idée". Après avoir demandé.
list_of_idea = [] while True: ask = input("What is your new idea ? :") list_of_idea.append(ask) print("{}.{}".format(len(list_of_idea), ask))
Quelle est votre nouvelle idée? : asda
1.asda
Quelle est votre nouvelle idée? : asdadasd
2.asdadasd
Les variables ne seront pas enregistrées après une exécution, même si vous ne les enregistrez pas dans un fichier.
Vous pouvez le faire en imprimant la liste dans une boucle for et en ajoutant l'index / compteur avant la valeur (c'est-à-dire juste pour imprimer).
qu'entendez-vous par ajouter l'index / compteur avant la valeur?
Gardez un compteur et incrémentez-le à chaque fois, puis utilisez-le dans la fonction d'impression
@AnkurChrungoo OP ne se soucie pas de l'impression des valeurs. Lisez la dernière ligne mentionnée par OP si je redémarre le programme, les idées resteront toujours dans la liste .
@Anwen voulez-vous stocker des
idées
danslist_of_ideas
chaque fois que vous exécutez votre programme tout en conservant les valeurs des exécutions précédentes?@ Ch3steR oui pour que le stockage de la liste dans un fichier puisse se faire. (Réponse de Filip ci-dessous)
je veux les stocker dans la liste. même si je redémarre le programme et que je veux qu'ils soient comptés
@Anwen, vous pouvez utiliser pickle pour enregistrer la liste
cornichon ? comment puis-je économiser avec un cornichon?
Je ne trouve pas le répertoire du cornichon, celui que j'ai créé. comment puis-je l'enregistrer?