Project1

标题: 再问个问题 [打印本页]

作者: 李月如    时间: 2010-7-7 18:17
提示: 作者被禁止或删除 内容自动屏蔽
作者: GM.01    时间: 2010-7-7 18:24
能给详细些吗?
作者: kojoy    时间: 2010-7-7 18:25
提示: 作者被禁止或删除 内容自动屏蔽
作者: 村纱水蜜    时间: 2010-7-7 18:27
私的小白理解是,因为这里dice(6)括号里指的是n的值吧?
rand(n) + 1当n=6的时候就是dice(6)
dice(6)=rand(6) + 1

dice(7)就应该是rand(7) + 1了吧?
作者: 李月如    时间: 2010-7-7 18:27
提示: 作者被禁止或删除 内容自动屏蔽
作者: 逸豫    时间: 2010-7-7 18:29
括号里面n=6是指调用此函数时若没有给出此参数,则默认此参数为6,所以调用dice(6)和调用dice的效果是一样的
作者: moy    时间: 2010-7-7 18:35
因为dice(n)的返回值就是rand(n)+1
本身这个是用来模拟掷骰子的,因为rand(n)是从0-(n-1),所以后面要+1,这样dice(n)返回值就是1-n了.

不过真是感动啊,这是F1里的吧,难得看到认真看F1的人呢,强烈支持哦~~
作者: 李月如    时间: 2010-7-7 18:36
提示: 作者被禁止或删除 内容自动屏蔽
作者: 李月如    时间: 2010-7-7 18:38
提示: 作者被禁止或删除 内容自动屏蔽
作者: moy    时间: 2010-7-7 18:48
return rand(n) + 1
这里我不明白

给我翻译哈


李月如 发表于 2010-7-7 18:36


首先挑个刺...不要连帖= =,能编辑的...

然后return表示中断当前函数进程,并且返回后面所列的值,如果是表达式就计算出结果.
也就是说,写了return,这个函数就有返回值了.
def dice(n = 6)                          首先是名字以及需要的初始值 一个n,没有赋值默认为6
  return rand(n) + 1                   给出返回值,其大小是通过得到的n再利用rand(n)+1的表达式计算而来.rand本身是取0-(n-1)的随机数,这里再+1,所得到的答案其实就是1-n的随机数,把这个数返回给调用dice的地方.
end                                           结束.

这样子的话,在用以下指令的时候..
p dice
于是这里就相当于得到了rand(n)+1的表达式的结果,然后n默认是6 ,于是就是rand(6)+1了.
作者: 李月如    时间: 2010-7-7 19:00
提示: 作者被禁止或删除 内容自动屏蔽
作者: 亿万星辰    时间: 2010-7-7 19:21
参数缺省值




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1