我是 Python 新手。我使用的是 Netbeans IDE 6.8。当我使用 RUN FILE 运行下面的代码时,它似乎没有产生任何输出。另一方面,当我调试代码时,输出显示 counter- 6 的值。
这是下面的程序的问题还是 Netbeans 的怪癖之一。
这是代码:
class Counter:
pass
def cInit():
# Create counter
ctr = Counter()
ctr.value = 0
# Define and call a recursive function that modifies counter
def inner(n):
if (n > 0): inner(n-1)
ctr.value = ctr.value + 1
inner(5)
# Get counter
return ctr.value
if __name__ == "__main__":
print "Hello World";
d = cInit()
print d
最佳答案
这是 netbeans 和其他 IDE 的一个经典“bug”。对于终端程序,他们打开一个终端,在其下运行程序,然后关闭它。当然,这意味着您的输出窗口会消失。
有两种方法可以修复它,具体取决于您的 IDE。有些 IDE 有一个选项,可以在程序完成后等待按键,它会隐藏在选项面板的某个位置。另一种方法是在代码末尾放置 raw_input()
命令,以便终端在关闭之前暂停并等待用户输入。如果最终用户在命令行上运行该东西,这可能会让他们感到非常烦人,因为他们可能不希望它在管道中间暂停。
关于python - Python 中递归函数中的计数器不会通过 Print 生成输出(使用 Netbeans),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6725157/