函数是参数,因为语句是......?

时间:2011-05-27 18:09:31

标签: language-agnostic

也许这个问题没什么意义,但我觉得我需要澄清。

函数和方法在定义时具有参数,并使用参数调用。

传递给名为的语句的值是什么?语句我指的是条件,循环等。

例如:

print 'foo'
print('foo')

PHP对待这些大致相同,Python 3现在使用的是函数而不是语句。

'foo'print语句之间的关系是什么?

2 个答案:

答案 0 :(得分:1)

语句通常由运算符和操作数组成,因此如果print是运算符,那么我认为你可以调用'foo'操作数。

答案 1 :(得分:1)

函数(和表达式)返回/陈述/提供问题的答案。如果你想知道“5和3的总和是什么”,你可以写一个表达式“5 + 3”或者调用一个函数“add(5,3)”。传递给函数的参数(或您在表达式中编写的操作数)构成了问题,从而确定了答案。

但是程序员也必须改变世界 - 至少是控制台窗口的内容,并且在漫长的一天结束时他们想要关闭计算机。所以语句(和子程序,即命名/可调用的代码片段)是“某事”的手段。打印语句/子程序只会改变显示器的像素,但不回答任何问题;打印功能会这样做(副作用)回答“写了多少个字符?”。 If是否会分支到这里或那里,或者While将停止或继续,取决于你放在语法正确位置的表达式/函数(=信息)。这些语句的参数决定了要做什么(而不是要知道什么)。

从技术上讲,知道与做的区别是模糊的。您可以使用返回/传递指定值的赋值语句(使“a = b = c = 5;”或“while(line = getNextLine()){}”成为可能)或使用允许使用If的三元运算符表达。

但在所有情况下:您向“知情者”或“行动者”提供的信息(参数/参数/操作数)决定结果 - 所以要小心!