如果a=str(integer),print(len(a))和return len(a)在函数中的作用相同吗?

2024-09-29 06:24:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我是编程新手,刚刚简单地学习了python中的函数。我不明白为什么print(len(str))在函数中的工作方式与return len(str)不同。你知道吗

对于函数的最后一个语句,我尝试了print和return,但对len()的理解感到困惑。我需要一些指导,谢谢!也许有人可以指导我如何进一步改善我的基础,因为我仍然是新的编程。谢谢您!!你知道吗

def numDigits(n):
    #return number of digits in an integer
    str_digits = str(n)
    print(len(str_digits))

numDigits(833)

如果我改变主意

printreturn len(str_digits)

numDigits(833)print(numDigits(833))

我得到了我期望的答案。你知道吗

我所期望的:

3

实际结果:

3
None
1
2
4
3

Tags: 函数numberlenreturndef编程方式语句
1条回答
网友
1楼 · 发布于 2024-09-29 06:24:16

在第一种情况下,numDigitsreturn函数中的值,您只在函数内部打印它

def numDigits(n):
    #return number of digits in an integer
    str_digits = str(n)
    print(len(str_digits))

print(numDigits(833))

这里的输出是

3
None

3来自printNone来自函数,当您print它时,它打印None

如果您想返回,那么在函数的末尾需要一个返回语句,如return len(str_digits),如下所示

def numDigits(n):
    #return number of digits in an integer
    str_digits = str(n)
    print(len(str_digits))

    #Return statement
    return len(str_digits)

print(numDigits(833))

现在输出为

3
3

现在第一个3来自print,第二个3来自打印numDigits返回的内容,即3

相关问题 更多 >