2017-06-22 1 views
0

Donc je travaille sur un problème pour mon cours de programmation "6.00.1x Introduction à l'informatique et la programmation en utilisant Python", et j'ai maintenant rencontrer quelques problèmes.Obtenir le même résultat, même après des modifications, lors de l'exécution du code dans la console Spyder IPython

Je me suis très proche de la solution au problème, mais ma réponse était un peu éteinte. Je suis entré et j'ai commencé à apporter des modifications au code. Mais en appuyant sur Run (j'utilise Spyder), la console Ipython m'a donné exactement la même réponse qu'avant. Je suis devenu un peu suspect et a commencé à enlever de gros morceaux de code. Toujours la même réponse. À la fin j'avais enlevé tellement de code que je n'avais plus que quelques lignes complètement hors sujet et il n'y avait absolument aucun moyen que ça marche. Pourtant, il l'a fait, même après avoir changé l'entrée, il a fait exactement ce qu'il avait fait plus tôt.

Maintenant, je suis un débutant total donc je parie que j'ai raté quelque chose, mais j'apprécierais vraiment que quelqu'un puisse m'expliquer ce qui se passe.

annualInterestRate = 0.2 

monthlyint = annualInterestRate/12 

balance = 320000 
epsilon = 0.5 

print(round(guess,2)) 

D'après ce que j'ai appris ce code ne doit pas travailler (la variable tour par exemple est même pas définie), et fait à peu près aucun sens. Cependant, quand je l'entrée dans la console, il me donne:

29591.88 

Pourquoi diable cela arrive-t-il?

Here's a picture of it in my console.

+0

Je devine parce que vous avez défini un répertoire de travail dans la ligne 10 de la console. Si vous fermez Spyder ou changez le répertoire de travail, alors le code ci-dessus échouera parce que 'guess' n'est pas défini –

+0

Ok merci, connaissez-vous une solution de contournement qui empêcherait ce genre de comportement? –

+0

soit supprimer le fichier dans le répertoire de travail qui a la fonction «deviner» ou changer le répertoire de travail en quelque chose d'autre. Je ne suis pas sûr de ce que vous entendez par «ce genre de comportement» parce que Spyder agit comme il le devrait. il semble –

Répondre

0

(développeur Spyder ici) Pour éviter ce genre de problème, nous avons ajouté (depuis Spyder 3.1) une nouvelle option pour effacer toutes les variables présentes dans une console IPython avant d'exécuter un fichier.

Pour accéder à cette option, vous devez aller au menu

Run > Configure 

(si vous voulez appliquer au fichier que vous utilisez) ou

Tools > Preferences > Run 

(si vous voulez appliquer à tous vos fichiers), puis regardez pour

General settings 

et sélectionnez

[ ] Clear all variables before execution (IPython consoles) 
+0

Ok merci beaucoup, je vais essayer ça! –