python - Python 中递归函数中的计数器不会通过 Print 生成输出(使用 Netbeans)

标签 python

我是 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/

相关文章:

python - 从单词列表中删除/n - python

python - 如何在 lisp 中定义这样的常量?

python - 使用 df.itertuples() 中的元组,如何在条件下检索每个元组元素的列值?

python - 引用 ndarray 中的 ndarray 行

python - 在 Python 和 Mac Lion 中写入 MIDI 端口

python - 如何使用漂亮的汤 python 从脚本标签中提取 json?

python - 提早停止 TensorFlow 2.0

python - 从 HTML 表单运行 Python 代码

python - 如何将函数(BigramCollocationFinder)应用于 Pandas DataFrame

python - 将 cron 语法以分钟为单位转换为 python 中的计划间隔