为什么输出结果中打印出了“None”?

19 浏览
0 Comments

为什么输出结果中打印出了“None”?

我已经定义了一个函数,如下所示:\n

def lyrics():
    print "第一行"
print lyrics()

\n但是为什么输出结果返回None:\n

第一行
None

0
0 Comments

这个问题的出现原因是在函数定义中有重复的print语句。解决方法是使用return语句代替print语句,在函数定义中返回需要输出的内容。

以下是解决方法的两种示例:

def lyrics():
    return "The very first line"
print(lyrics())

或者

def lyrics():
    print("The very first line")
lyrics()

如果想要使用print语句以外的其他方法来实现相同的输出效果,可以简单地使用lyrics()来调用函数即可。

感谢您的提问,希望对您有所帮助。

0
0 Comments

这段代码中为什么输出为'None'?

出现这个问题的原因是因为代码中有两个print语句,一个在函数内部,一个在函数外部。当一个函数没有返回任何东西时,它会隐式地返回None。

解决方法是在函数的末尾使用return语句来返回值。例如:

def test1():
    print "In function."
a = test1()
print a
print test1()
test1()

使用return语句:

def test():
    return "ACV"
print test()
a = test()
print a

另外,对于另一个问题,代码只返回最后一个数字的原因是return语句放在了while循环内部。应将return语句放在while循环外部。

def another(n):
    rev = 0
    while(n!=0):
        rev = rev*10 + n%10
        n //= 10
    return rev
print another(2154)

更正后的代码如下:

def another(n):
    rev = 0
    while(n!=0):
        rev = rev*10 + n%10
        n //= 10
    return rev
print another(2154)

希望对你有帮助!

0