Python 用零v传递函数。一个论点
好吧,我这里有一个幼儿园级的问题,我可以绕过它,但我决定忍住尴尬,直接问它。那么,从根本上讲,在传递论点时,有什么区别呢Python 用零v传递函数。一个论点,python,parameters,Python,Parameters,好吧,我这里有一个幼儿园级的问题,我可以绕过它,但我决定忍住尴尬,直接问它。那么,从根本上讲,在传递论点时,有什么区别呢 def add(): x = 'Print X' print (x) 及 我已经能够以自己的方式编写一点代码,而没有真正理解这一点——但是这个程序的读取方式有什么不同呢 不要生吃我,我知道这是基本的哈哈 请检查 代码中的“x”没有用处,因此将其作为参数传递没有任何意义,当您将参数传递给希望在函数中使用该数据的函数时,例如: def add(x,y):
def add():
x = 'Print X'
print (x)
及
我已经能够以自己的方式编写一点代码,而没有真正理解这一点——但是这个程序的读取方式有什么不同呢
不要生吃我,我知道这是基本的哈哈 请检查
代码中的“x”没有用处,因此将其作为参数传递没有任何意义,当您将参数传递给希望在函数中使用该数据的函数时,例如:
def add(x,y):
return x+y
但如果您要在输入函数后立即覆盖作为参数获得的任何值,就像在上所做的那样:
def add(x):
x = 'Print X' <--- here
print(x)
请查收
代码中的“x”没有用处,因此将其作为参数传递没有任何意义,当您将参数传递给希望在函数中使用该数据的函数时,例如:
def add(x,y):
return x+y
但如果您要在输入函数后立即覆盖作为参数获得的任何值,就像在上所做的那样:
def add(x):
x = 'Print X' <--- here
print(x)
就您的特定示例而言,这两个函数在输出方面没有差异。然而,只要稍加修改,您就可以将其中一个作为另一个的泛化。考虑这一点: 职能1:
def add():
x = 'Print X'
print (x)
职能2
def add(x):
print (x)
调用第一个函数时,它使用字符串初始化x
,然后打印该字符串。但是,在调用第二个函数时,需要为x传递一个值(这称为参数,可以是“任意”值)。如果您像add('Wow!这太棒了!”)那样调用它
该函数将打印您的字符串。由于函数2可以打印您作为参数而不是硬编码参数给出的任何字符串,因此我将函数2称为函数1的泛化
您的函数2以与我的函数2相同的方式接收字符串,但它用'Print x'
覆盖x
的值。因此,无论给定的参数是什么,它都会打印相同的字符串
希望这件事对你来说很清楚 就您的特定示例而言,这两个函数在输出方面没有差异。然而,只要稍加修改,您就可以将其中一个作为另一个的泛化。考虑这一点: 职能1:
def add():
x = 'Print X'
print (x)
职能2
def add(x):
print (x)
调用第一个函数时,它使用字符串初始化x
,然后打印该字符串。但是,在调用第二个函数时,需要为x传递一个值(这称为参数,可以是“任意”值)。如果您像add('Wow!这太棒了!”)那样调用它
该函数将打印您的字符串。由于函数2可以打印您作为参数而不是硬编码参数给出的任何字符串,因此我将函数2称为函数1的泛化
您的函数2以与我的函数2相同的方式接收字符串,但它用'Print x'
覆盖x
的值。因此,无论给定的参数是什么,它都会打印相同的字符串
希望这件事对你来说很清楚 看起来您混合了函数的定义和调用
def add(x):
print (x)
这是一个定义
add ("Print x")
调用函数。
在函数范围内,变量x的值为“Print x”看起来像是混合了函数的定义和调用
def add(x):
print (x)
这是一个定义
add ("Print x")
调用函数。
在函数范围内,如果变量x的值为“Print x”则第二个函数的参数是完全多余的,因为您立即在函数中为其赋值,即“代码> x=‘打印X’< /CODE >,所以PUN差异是,第二个要求您传递一些不会影响函数输出的东西……但是,考虑函数<代码> DEF Adx(X):打印(‘打印’,X)< /代码>尝试调用这两个函数。你会注意到一个不同,你会注意到其中一个没有太多意义。你的第二个函数的参数是完全多余的,因为你在函数中立即赋值给它,即“代码> x=‘打印X’< /CODE >,所以PUN差异是,第二个要求您传递一些不会影响函数输出的东西……但是,考虑函数<代码> DEF Adx(X):打印(‘打印’,X)< /代码>尝试调用这两个函数。你会注意到一个不同,你会注意到其中一个没有太多意义。这是有意义的@divancontreras-谢谢。看,这只是一些我不知道如何解释的小事情。不幸的是,我在编码点,我可以得到周围的东西,但我不知道为什么他们的工作哈哈。我正试图解决这个问题,也许你的意思是“print('print X',X)”?,在你打印的任何值上都有前缀。这很有意义@divanconveras-谢谢。看,这只是一些我不知道如何解释的小事情。不幸的是,我在编码点,我可以得到周围的东西,但我不知道为什么他们的工作哈哈。我正试图解决这个问题,也许你的意思是“print('print X',X)”?,在你打印的任何值上都有前缀。