Hi,
This behavior was changed in Spyder 4 (if I’m not mistaken) to prevent
people from inadvertently using variables defined in the console when
rerunning a file.
For instance, they could have removed a variable in their code that it’s
still present in the console from a previous run. So this would give the
impression that everything is working fine, when in reality it’s not
(i.e. the code will fail to run in another person’s computer). So, I’d
say chatGPT is right about this one in the sense that the code you’re
trying to run doesn’t stand on its own. Furthermore, it’s a bad practice
to write code like that and should be avoided as much as possible.
But you can revert back to the old behavior by going to the menu
|Run > Configuration per file |
and selecting there the option
|Run in console's namespace instead of an empty one. |
Cheers,
Carlos
El 30/01/23 a las 20:25, Ryan Enos escribió:
I just updated Spyder, and now I have the following issue.
If I enter in the console:
>>> a = 1
>>> print(a)
1
Then if I run the following single-line script:
print(a)
I get the error:
NameError: name 'a' is not defined
Even though 'a' is clearly defined in the Variable Explorer.
According to chatGPT, Python has always worked this way, with a script
apparently having it's own 'scope', without access to global variables.
I've used Python for years and never heard anything remotely like
this. I access global variables from scripts all the time and never
had an issue, in both ABAQUS and Spyder. Then suddenly I update Spyder
and have this issue. Can someone please explain why it worked for me
before and not now? And how I can fix this?
chatGPT says add the line 'global a', which is not acceptable solution
for me even if it worked, but even that doesn't solve the error.
Thanks,
Ryan
--
You received this message because you are subscribed to the Google
Groups "spyder" group.
To unsubscribe from this group and stop receiving emails from it, send
an email to spyderlib+unsubscr...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/spyderlib/4a403439-4d4f-4d08-8c3c-5ae247c749ffn%40googlegroups.com
<https://groups.google.com/d/msgid/spyderlib/4a403439-4d4f-4d08-8c3c-5ae247c749ffn%40googlegroups.com?utm_medium=email&utm_source=footer>.
--
You received this message because you are subscribed to the Google Groups
"spyder" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to spyderlib+unsubscr...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/spyderlib/c311665e-adbc-b6c7-d510-17ddb6c61eb7%40gmail.com.