Python 为什么要打印';无';在输出中?

Python 为什么要打印';无';在输出中?,python,nonetype,Python,Nonetype,我定义了一个函数,如下所示: def lyrics(): print "The very first line" print lyrics() 但是,为什么输出返回None: The very first line None 因为有两个打印语句。第一个是内部功能,第二个是外部功能。当函数不返回任何内容时,它隐式返回None >>> def test1(): ... print "In function." ... >>>

我定义了一个函数,如下所示:

def lyrics():
    print "The very first line"
print lyrics()
但是,为什么输出返回
None

The very first line
None

因为有两个打印语句。第一个是内部功能,第二个是外部功能。当函数不返回任何内容时,它隐式返回
None

>>> def test1():
...    print "In function."
... 
>>> a = test1()
In function.
>>> print a
None
>>> 
>>> print test1()
In function.
None
>>>
>>> test1()
In function.
>>> 
在函数末尾使用
return
语句返回值

e、 g:

返回
None

>>> def test1():
...    print "In function."
... 
>>> a = test1()
In function.
>>> print a
None
>>> 
>>> print test1()
In function.
None
>>>
>>> test1()
In function.
>>> 
使用返回语句

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

因为有双重打印功能。我建议您在函数定义中使用
return
而不是
print

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

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

使用print语句还有其他方法吗?只要
歌词()
就足够了。谢谢(),我是noob,对编程很陌生。你能告诉我代码出了什么问题吗?它只返回最后一个数字def另一个(n):rev=0,而(n>=0):rem=n%10 rev=(10*rev)+n%10 n/=10返回rev打印另一个(2154)输出:4@def_0101:好的,你在做什么?反向号码??是反向integers@def_0101:
def另一个(n):rev=0而(n!=0):rev=rev*10+n%10 n/=10返回rev
check。。在下一条注释中添加解释。@def_0101:相反,我们需要从最后一个数字到第一个数字,并通过将这些数字加上0、10、100、1000的倍数来包装新的数字。。。1.如何获取最后一位:使用
%
操作获取您完成的最后一位。2.将输入的数字除以10,您也可以这样做。3.通过将
%
操作的结果添加到10的倍数的反向编号,创建反向编号。让我知道