python中def意思是声明函数。Python 使用def 开始函数定义,紧接着是函数名,括号内部为函数的参数,内部为函数的 具体功能实现代码,如果想要函数有返回值, 在 expressions 中的逻辑代码中用 return 返回。expressions实例def function():print('This is a function')a = 1+2print(a)function 的函数,函数没有不接受参数,所以括号内部为空,紧接着就是 函数的功能代码。如果执行该脚本,发现并没有输出任何输出,因为我们只定义了函数,而并没有执行函数。 这时我们在 Python 命令提示符中输入函数调用 function(), 注意这里调用函数的括号不能省略。那么函数内部的功能代码将会执行,输出结果:This is a function。
创新互联是专业的石城网站建设公司,石城接单;提供成都网站制作、成都网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行石城网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
假设两个数带进去替换x和n就好理解了,比如power(2,3)计算2的3次方
按照代码
s=1 n0(我们假设了n为3)
然后执行while n0 里的n=n-1 n变成2
再执行s(这个是新的s)=s(这个是旧的s)*x 新s变为2(我们上面假设x为2)
然后返回s(下次使用时就变成了旧s)
接着判断n,依旧大于0 ,执行n=n-1 n变成1 执行s=s*x 新s变为4,然后返回s
接着判断n,依旧大于0,执行n=n-1 n变成0(意味着这次结束就将跳出循环)执行s=s*x
新s变成8
循环结束,得到结果。2的3次方是8
不知道还有什么地方不明白
1.如果你只是问
x和n有啥区别。
那标准答案就是:
除了字母不一样,其他没啥区别。都是某个函数中的某个参数(变量)而已。
而变量名,是可以(在保证符号语法要求的前提下)随便写的。
比如你的cube函数,就可以改为:
def cube(x):
result=x**3
return result
而更加好的写法是:
def cube(inputIntValue):
threeCubedResult =inputIntValue**3;
return threeCubedResult
这样才叫做代码的可读性好一些。
2.从你代码本意看,就是
当输入数据是3的倍数时,就返回该数的3次方
否则就返回False
而且代码也是如你所愿的去运行了。
你还有啥疑问???
3.你说的
argument
parameter
简单说:
都是个英文单词,都可以表示函数的参数。
用哪个都可以。
4.反正是说了半天,没看到你到底想问啥。。。。
=======
貌似终于看懂你问的了。。。
简答:
用x
详解:
用x还是n
主要是:
你本身对于函数,参数调用,的概念,完全搞混淆了。
简单解释就是:
你先去搞懂函数变量的概念
然后就自动懂了如何调用函数,如何传递参数
此处就是:
def by_three(x):
if x%3==0:
return cube(x)
else:
return False
中的x,是函数by_three的一个变量
此变量的值,是输入的参数决定的
如果改为n,那么就是:
代码非法,
因为当前函数by_three内,根本就没有n这个变量
所以无法使用。
再总结为:
函数实现的时候,你的函数参数的名字和你被调用的时候,没有半毛钱关系。
即
cube函数实现时,用的参数名字叫做n,而by_three中调用cube的时候写的x
两者没有关系。
有关系的是:
在别的函数(by_three)中,调用被调用的那个函数(cube)时,确保传递的参数类型是要匹配的,一致的(此处都是int型)
不知道说清楚了没。。。