2012年04月12日 星期四 17:31
刚开始学些python,买了科学计算这本书,看了感觉收获很大。有点问题想请教:
书中里面traitsui_csv_viewer这个程序中,用自定义EnumEditor的代码
Item("selected_xaxis", editor= EnumEditor(name="object.data_source.names", format_str=u"%s")),
我想请问里面的object代表什么含义?
还有我在自己的代码中也是这样写的,为什么运行的时候一直提示说
'NoneType' object has no attribute 'alltypes' (alltypes是我定义的DataSource类的一个属性)
但是我使用print 可以访问这个属性
2012年04月12日 星期四 18:44
object就是此视图对象所对应的模型对象,在本程序中就是Graph对象。关于这一点的说明在
和
中有介绍。
如果你的程序用的是
"object.data_source.alltype"
并提示'NoneType' object has no attribute 'alltypes'
那么说明模型对象的data_source为None,可能程序运行到那里时data_source还没有初始化。
2012年04月12日 星期四 18:47
如果你要贴代码详细讨论的话,可以到我的主页的论坛上,那里可以贴代码:
2012年04月12日 星期四 19:19
感谢指点。我有点明白问题所在了。
因为在书里面是在CSVGrapher这个类里面初始化data_source(因为这个部分先显示),所以之后设置就没问题了。
按照这个思路,我现在在_init_方法里面写上了data_source=Instance(DataSource)现在就可以了。
不知道还有没有其他方法?
Zeuux © 2024
京ICP备05028076号