Python Forum
I am getting a NameError that is not defined and not sure why it happen
Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
I am getting a NameError that is not defined and not sure why it happen
#6
This is interesting.
def test():
    a = 0
    exec("print(dir())")

test()
Output:
['a']
exec is "inheriting" variables defined in the local scope, but these must not be the same variables. Changing the variable "inside" exec does not change the value "outside" exec.
def test():
    a = 0
    exec("print(a);a=5;print(a)")
    print(a)

test()
Output:
0 5 0
This is similar to what happens when using fork. In the Unix/Linux world the forked process shares the same variables as the parent process. Changing "a" in the forked process changes "a" in the parent because a is the same variable, resides in the same memory. In Windows a brand new process is created for the fork and the parent process and forked process are separate. The forked process has the same variable names and initial values, but the forked variables are not the same variables that were defined in the parent process.
Reply


Messages In This Thread
RE: I am getting a NameError that is not defined and not sure why it happen - by deanhystad - Jun-14-2021, 03:41 PM

Possibly Related Threads…
Thread Author Replies Views Last Post
  I'm getting a NameError: ...not defined. vonArre 2 249 Mar-24-2024, 10:25 PM
Last Post: vonArre
  Getting NameError for a function that is defined JonWayn 2 1,089 Dec-11-2022, 01:53 PM
Last Post: JonWayn
Question Help with function - encryption - messages - NameError: name 'message' is not defined MrKnd94 4 2,872 Nov-11-2022, 09:03 PM
Last Post: deanhystad
  [split] NameError: name 'csvwriter' is not defined. Did you mean: 'writer'? cathy12 4 3,296 Sep-01-2022, 07:41 PM
Last Post: deanhystad
  NameError: name ‘app_ctrl’ is not defined 3lnyn0 0 1,499 Jul-04-2022, 08:08 PM
Last Post: 3lnyn0
  NameError: name 'hash_value_x_t' is not defined Anldra12 5 1,910 May-13-2022, 03:37 PM
Last Post: deanhystad
  NameError: name 'cross_validation' is not defined tmhsa 6 13,331 Jan-17-2022, 09:53 PM
Last Post: TropicalHeat
  NameError: name “x” is not defined ... even though x is defined campjaybellson 7 14,933 Oct-20-2021, 05:39 PM
Last Post: deanhystad
  NameError: name 'Particle' is not defined in Pygame drunkenneo 4 3,356 Aug-15-2021, 06:12 PM
Last Post: bowlofred
  NameError: name 'u1' is not defined (on parser code Python) Melcu54 1 2,871 Jul-26-2021, 04:36 PM
Last Post: snippsat

Forum Jump:

User Panel Messages

Announcements
Announcement #1 8/1/2020
Announcement #2 8/2/2020
Announcement #3 8/6/2020