当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 9 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : 作用域嵌套和LGB规则<求救>
帖子发表于 : 2007-06-05 6:09 

注册: 2007-03-15 21:23
帖子: 9
送出感谢: 0 次
接收感谢: 0 次
代码:
def outer(x):
      def inner(i):
            print i,
            if i:inner(i-1)
      inner(x)
outer(3)

按照书上写的这样的函数是不能运行的,解释是嵌套函数不是嵌套作用域..
嵌套的函数对自己的局部作用域,包含自己的模块的全局作用域以及内置的名字作用域有访问权,对包含自己的函数的作用域无访问权.
但是为什么在我这里 这段代码完全可以执行而没有任何错误
是书太古老了吗?还是新版本的python增加了这样的内容?


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2007-06-05 6:12 

注册: 2007-03-15 21:23
帖子: 9
送出感谢: 0 次
接收感谢: 0 次
语法上没有问题 缩进被论坛消除了


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2007-06-05 6:53 

注册: 2007-03-15 21:23
帖子: 9
送出感谢: 0 次
接收感谢: 0 次
困的不行了 没办法在线等了
希望看到此帖的仁兄给个解答 睡起来再继续


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2007-06-06 5:16 
头像

注册: 2005-10-25 11:15
帖子: 1016
送出感谢: 0 次
接收感谢: 1
鉴定结果:你看的是古籍。


_________________
hreiser@oakland:~$ killall -9 wife
police@oakland:~$ sudo find / -user hreiser
court@oakland:~$ sudo mv /home/hreiser /jail/
court@oakland:~$ sudo usermod -d /jail/hreiser -s "/usr/sbin/chroot /jail/" hreiser


页首
 用户资料  
 
5 楼 
 文章标题 :
帖子发表于 : 2007-06-06 9:28 
头像

注册: 2005-10-04 10:59
帖子: 1928
地址: 上海
送出感谢: 0 次
接收感谢: 1
没问题阿,可以执行。


_________________
弄个dropbox空间来备份文件或者做私人代码服务器
配置:git://github.com/roylez/dotfiles.git
主页:http://roylez.heroku.com
各种稀奇玩意儿:http://dooloo.info


页首
 用户资料  
 
6 楼 
 文章标题 :
帖子发表于 : 2007-06-08 3:35 

注册: 2007-03-15 21:23
帖子: 9
送出感谢: 0 次
接收感谢: 0 次
这本古籍还是不错的 呵呵
古籍所描述的想实现这样的根本不可能...
至少加深了我对这个问题的理解


页首
 用户资料  
 
7 楼 
 文章标题 : 个人见解
帖子发表于 : 2007-07-06 7:32 

注册: 2007-07-06 7:26
帖子: 3
送出感谢: 0 次
接收感谢: 0 次
可能是inner绑定到了模块上,这样它既是局部的,又是全局的


页首
 用户资料  
 
8 楼 
 文章标题 : Re: 个人见解
帖子发表于 : 2007-07-06 7:54 

注册: 2007-07-06 7:26
帖子: 3
送出感谢: 0 次
接收感谢: 0 次
richardfreeman 写道:
可能是inner绑定到了模块上,这样它既是局部的,又是全局的


我也是用的老书了 在2.1版中的嵌套作用域中 ,这种没定义在它所属的定义域的变量给了个名字叫自由变量,引用这种变量,使用与当前引用变量的代码块最近的且包含它的作用域。所以编译不报错。


页首
 用户资料  
 
9 楼 
 文章标题 : 3
帖子发表于 : 2007-07-06 7:59 

注册: 2007-07-06 7:26
帖子: 3
送出感谢: 0 次
接收感谢: 0 次
记得加上这句,才能用这个新特性:
from __future__ import nested_scopes


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 9 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 2 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译