Is it possible to define global variables in a function in Python

前端 未结 2 1202
自闭症患者
自闭症患者 2020-12-08 00:17

How do I declare a global variable in a function in Python?

That is, so that it doesn\'t have to be declared before but can be used outside of the function.

相关标签:
2条回答
  • 2020-12-08 01:08

    Yes, but why?

    def a():
        globals()['something'] = 'bob'
    
    0 讨论(0)
  • 2020-12-08 01:10
    def function(arguments):
        global var_name
        var_name = value #must declare global prior to assigning value
    

    This will work in any function, regardless of it is in the same program or not.

    Here's another way to use it:

    def function():
        num = #code assigning some value to num
        return num
    

    NOTE: Using the return built-in will automatically stop the program (or the function), regardless of whether it is finished or not.

    You can use this in a function like this:

    if function()==5 #if num==5:
        #other code
    

    This would allow you to use the variable outside of the function. Doesn't necessarily have to be declared global.

    In addition, to use a variable from one function to another, you can do something like this:

    import primes as p #my own example of a module I made
    p.prevPrimes(10) #generates primes up to n
    for i in p.primes_dict:
        if p.primes_dict[i]: #dictionary contains only boolean values
            print p.primes_dict[i]
    

    This will allow you to use the variable in another function or program without having use a global variable or the return built-in.

    0 讨论(0)
提交回复
热议问题