我在下面代码的第8行得到一个SyntaxError。
import random
import sys
a=random.randint(1, 30)
b=random.randint(1, 30)
c= "minus" or "plus"
print(c)
def f():
if global b>global a:
a=random.randint(1, 30)
b=random.randint(1, 30)
print(a+b)
我不打算在这里过多地讨论全局变量的不必要使用(最好将a/b作为参数传递)。
您使用的语法(if global b>global a:
)无效。global x
是一个变量范围的定义,它只做一次,应该在它自己的行上。
import random
import sys
a=random.randint(1, 30)
b=random.randint(1, 30)
c= "minus" or "plus" ## not sure what this is doing
print(c)
def f():
global a ## definition of global scope
global b
if b>a: ## use of variables
a=random.randint(1, 30)
b=random.randint(1, 30)
print(a+b)
,假设你想在某个时刻调用f
:
f()