我正在尝试学习如何编写循环,但它似乎没有打印到控制台

Posted

技术标签:

【中文标题】我正在尝试学习如何编写循环,但它似乎没有打印到控制台【英文标题】:I'm trying to learn how to write a loop but it doesn't seem to print to the console 【发布时间】:2018-11-06 12:19:05 【问题描述】:

我正在练习 Python,我正在尝试编写一个循环,但是当我运行它时它不会打印出来。我通过 jupyter notebook 使用 Python 2.7。当我运行代码时,它所做的只是启动另一个内核,但不打印任何内容。

def main():
    x = 0

    while (x < 5):
        print (x)
        x = x + 1

【问题讨论】:

你试过像main()这样调用函数吗? 删除“def main():”并再次运行 添加一个单元格并调用 main() 作为coldspeed提到的 def main(): x = 0 while (x 另见***.com/q/4041238 【参考方案1】:

你已经定义了函数,但现在你必须告诉 Python 运行它!

你需要做的就是调用它,像这样:

def main():
    x = 0

    while (x < 5):
        print (x)
        x = x + 1
main() #This is calling a function

此外,您可能希望将您的 x = x + 1 行更改为 x += 1。它们是等价的,但这样更简洁,而且您不必输入两次变量。

在 jupyter notebook 中(或者在 cmd 的交互模式下),你也可以在按下 shift + enter 并再次调用 main() 之后执行此操作。

【讨论】:

谢谢,它可以运行了。但是,我正在观看的视频不必调用该函数。他们留下了我最初拥有的代码。关于为什么会这样的任何想法? 链接视频,也许他们只是跳过了它 这是通过 Lynda 提供的,这是我们当地图书馆的免费课程。我发现他们在我看不到的代码底部定义了。感谢您的所有帮助。【参考方案2】:

我猜您曾使用过 C 或其亲属之一,其中程序的入口点是对 main 的调用。在 Python 中不是这样。 Python 像许多脚本语言一样工作,从上到下运行文件,并且您的文件包含一个任务供它执行:define 一个名为 main 的函数。具有这种功能的脚本中的传统是在底部放置一个测试来调用它,允许在导入代码和作为程序运行之间进行选择:

if __name__ == '__main__':
    main()

有了这个小结语,您的程序实际上应该运行main 函数。

您的程序中还有一些其他的 C-isms。 Python 在whileif 测试中不需要括号,我们有一个更方便的for,它使用迭代器而不是整数进行操作。对于需要整数时,range 很方便:

for x in range(5):
    print(x)

如果您运行的是 Python 2,print 是一个不需要括号的语句,但它是 Python 3 中的一个函数,所以我保留了它们。

【讨论】:

【参考方案3】:

在您的代码中,您定义了一个函数main(),但您从未调用它。要解决此问题,请从单元格中删除 def main(),即只需执行您要运行的代码

x = 0
while (x < 5):
    print (x)
    x = x + 1

或调用你的函数main():

def main():
    x = 0
    while (x < 5):
        print (x)
        x = x + 1

main()

【讨论】:

【参考方案4】:

删除 main 函数,删除 def main(): 并在 while 循环之前指定 x=0

【讨论】:

以上是关于我正在尝试学习如何编写循环,但它似乎没有打印到控制台的主要内容,如果未能解决你的问题,请参考以下文章

事件内部功能无法正常工作

PL/SQL 不打印到控制台(在 SQLDeveloper 中)

如何在 Python 中打印上标?

将值从 php 传递到 modal

如何在pytest中打印到控制台?

我正在尝试附加 alamofire 循环并放入 sqlite db,但它给了我错误