The Python, global keyword allows us to modify the variables which are outside the current scope. It is a case-sensitive keyword. It is used to create a global variable. The variable is declared outside the function or in the global scope is known as global variable.
The global variable cane be accessed inside or outside the function. When we use the global keyword inside the if-else statements, it will result a SyntaxError.
When we create a variable outside the function it is a global variable by default no need to specify the global keyword before it. We use the global keyword to read and write a global variable inside a function.
UsageFollowing is the usage of the Python global keyword −
global variable_name
Where, variable_name is the name of the variable which we need to declare global.
ExampleFollowing is an basic example of the Python global keyword −
var1 = 100 print("Variable before function :", var1) def fun1(): global var1 var1 = 879 print("Variable inside the function :",var1) fun1() print("Variable outside the function :",var1)Output
Following is the output of the above code −
Variable before function : 100 Variable inside the function : 879 Variable outside the function : 879Using the global Keyword in Nested Functions
When we defined one function inside another function is known as nested function. We can also use the global keyword inside the nested function.
ExampleHere, we have defined the nested function and created global variable inside fun2(). In fun2, num has no effect of the global keyword. Before and after calling fun2() the num takes the value of the local variable i.e 24. Outside the fun1(), the num will take global variable i.e 100 because we have used the global keyword in num to create a global variable inside fun2() so, if we make any changes inside the fun2(), the changes appear outside the local scope i.e fun1() −
def fun1(): num = 24 def fun2(): global num num = 100 print("Before calling fun1(): ", num) fun2() print("After calling fun2(): ", num) fun1() print("num Variable Outside both function(): ", num)
Output
Following is the output of the above code −
Before calling fun1(): 24 After calling fun2(): 24 num Variable Outside both function(): 100Using global Keyword in if-else statement
When the global keyword is used inside the if-else, it will raise an SyntaxError.
ExampleFollowing is an example of usage of global keyword in if-else −
var1 = 80 if True: global var1 var1 = 234 print(var1)
Output
Following is the output of the above code −
File "/home/cg/root/70237/main.py", line 3 global var1 ^^^^^^^^^^^ SyntaxError: name 'var1' is assigned to before global declaration
python_keywords.htm
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4