在"计数+ = 1"时投掷错误。我试图让它成为一个全球性的等等,它仍然存在问题。这比任何事都更开玩笑,但我想知道为什么它不起作用。
SELECT TOP 1000 NAME
,TName
,IName
,IType
,AvgPercent
,FCount
,PCount
,AvgInPages
,CAST(RunDate AS DATE) AS RDate
,CONVERT(TIME(0), RunTime) AS RTime
FROM INDEX
WHERE CAST(RunDate AS DATE) BETWEEN @StartDate
AND @EndDate
答案 0 :(得分:1)
您需要将global
关键字移到您的功能中。
count=0
def getAndValidateInput():
global count
#print menu
#So on and so forth
现在您应该能够访问您的计数变量了。它与Python中的作用域有关。您必须在要使用它的每个函数中声明变量是全局变量,而不仅仅是它定义的位置。
答案 1 :(得分:1)
global count
应位于getAndValidateInput()
函数内。
答案 2 :(得分:0)
我遇到了同样的问题,结果发现它与范围有关,并且在另一个函数定义中有一个函数定义。有用的是编写可以创建和修改全局变量的单独函数。像这样举例如:
def setcount(x):
global count
count = x
def upcount():
global count
count += 1