Python编码(调用函数/返回值)

2024-10-04 03:23:21 发布

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

我在编写这个问题的代码时遇到了困难。我在一些地方看到有人问这个问题,但我仍然无法从他们提供的提示中找到答案。在

问题是:编写一个有两个函数的程序:first()和second()。Function first()应该打印字符串“In Function first()”,然后调用Function second()。函数second()应打印函数second()中的字符串。在全局scopre中,应该首先调用function()。在

这是我的密码。。在

def first():
    first = "In function first"


def second():
    second = "In function second"

print first(), second()

这个看起来更近了吗?它仍然不起作用,但我把打印功能放回去了。。在


Tags: 函数字符串答案代码in程序密码def
1条回答
网友
1楼 · 发布于 2024-10-04 03:23:21

first = "In function first"不使函数返回"In function first"。在

我能理解你为什么会这么想。在某些语言中,返回值的方法是将其分配给函数。在其他语言中,赋值是一个表达式,在函数内部计算的最后一个表达式是返回值。所以,有很多种语言你所做的都能起作用。在

但Python不是其中之一。在Python中,返回值的唯一方法是使用return语句。如果不使用return语句,调用者只得到None。在

因此,您的代码只是创建一个与函数同名的局部变量(令人困惑地),为其赋值,然后忽略该变量,因此它最终没有效果。在

你想要的是:

def first():
    return "In function first"

def second():
    return "In function section"

print first(), second()

然而,虽然这会给你想要的输出,但它实际上并不是你所说的你想要的:

Function first() should print the string "In function first()"

在这种情况下,它应该有一个print,而不是{}一个别人必须打印的值。在

… and then call function second().

然后您需要将对second()的调用放在first的定义内,而不是在它之外。在

Function second() should print the string "In function second().

同样,它应该print,而不是{}。在

所以,这更符合你的想法:

^{pr2}$

也就是说,您编写的代码(使用此修复程序)实际上似乎比您想要编写的代码更好。从内部函数返回值并在最高级别处理输出通常比到处使用print更灵活。在

相关问题 更多 >