在 Python 中如何通过函数传递参数

问题描述 投票:0回答:1

我是 Python 的新手,我正在看 CS50P 讲座,但没有掌握传递参数的工作原理。

比如为什么我不能写is_even(x)而不是is_even(n)。另外,布尔值如何返回到我的主要功能?我知道下面的代码有效,我只是不明白信息如何从一个函数移回另一个函数。

python parameter-passing cs50
1个回答
0
投票

定义a的时候设置的参数,理解的话其实就是一个占位符。以你的代码行为例。

def main():
    x = int(input("what's x?"))
    if is_even(x):
        print('EVEN NUMBER')
    else:
        print('ODD NUMBER')


def is_even(n):
    if n % 2 == 0:
        return True
    else:
        return false

main()

使用您的代码,当您在定义函数

is_even
时在括号内键入 n 时,n 实际上是一个占位符。因此,稍后当您执行
is_even
时,如
if is_even(x):
所示,发生的事情是它采用所示的变量 x 并将其替换为您放置占位符 n 的任何位置。希望这可以澄清您的问题。 Barmar 和 kcw78 是正确的,但我将其置于更易于理解的格式中。由于我的声誉,我无法对此发表评论。

© www.soinside.com 2019 - 2024. All rights reserved.