代码之家  ›  专栏  ›  技术社区  ›  Richard Pak

运行代码时出现非类型[重复]

  •  -1
  • Richard Pak  · 技术社区  · 7 年前

    为什么此代码返回 None ?

     def html_list(inputs_list):
        print("<ul>")
    
        for html in inputs_list:
            html = ("<li>" + html + "</li>")
            print(html)
    
        print("</ul>")
    
    bam = ['boom','bust']
    
    print(html_list(bam))
    
    1 回复  |  直到 7 年前
        1
  •  0
  •   Joe Iddon    7 年前

    您的功能有 print 在其中调用,但不 回来 任何东西如果函数完成而不返回,那么它确实会返回 None .

    这意味着如果调用 打印 语句,它将运行,执行 prints 在函数中,但返回 没有一个 然后进入 print() 函数-这就是为什么您得到预期的输出,然后 "None" 最后。

    您还可以通过一个更简单的示例来了解这一点:

    >>> def f():
    ...     print("inside f")
    ... 
    >>> print(f())
    inside f
    None