Python中文
首页
教程
问答
标签
搜索
登录
注册
Python名称可见性
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我正在阅读一些wxPython代码来学习一些Python。请记住,我真的是一个初学者,所以我的问题将是显而易见的,但对我来说,这是神秘的,它可能会教我很多,以充分理解这个问题。你知道吗</p> <p>代码如下:</p> <pre><code>class MainFrame(wx.Frame): TITLE = "Frame" POSITION = wx.DefaultPosition SIZE = wx.DefaultSize STYLE = wx.DEFAULT_FRAME_STYLE LAYOUT_MANAGER = wx.GridBagSizer() def __init__( self, parent = None, id = wx.ID_ANY, title = TITLE, pos = POSITION, size = SIZE, style = STYLE, name = wx.FrameNameStr ): super(MainFrame, self).__init__(parent, id, title, pos, size, style, name) self.SetSizerAndFit(self.LAYOUT_MANAGER) self.panel = MainPanel(parent=self) </code></pre> <p>我的问题很简单:如果我引用布局管理器,为什么会得到<code>NameError: global name 'LAYOUT_MANAGER' is not defined</code>,如下所示:</p> <pre><code>self.SetSizerAndFit(LAYOUT_MANAGER) </code></pre> <p>删除<code>self</code>引用,即。你知道吗</p> <p>我为什么困惑?仅仅是因为在这个方法中,引用了<code>POSITION</code>、<code>SIZE</code>等字段,没有任何前缀<code>self</code>,但是如果我使用字段布局管理器作为方法<code>SetSizerAndFit</code>的参数,则需要引用。。。你知道吗</p> <p>什么给了我?!你知道吗</p> <p>我可能忘了这里最自然的语言范围/可见性规则。。但考虑到我所知甚少,能写<code>size = SIZE</code>(没有<code>self.</code>)却不能只写<code>LAYOUT_MANAGER</code>,需要<code>self.LAYOUT_MANAGER</code>是没有意义的?!你知道吗</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>默认参数在声明时在其封闭范围内进行求值,而methods本身在另一个范围内进行求值。你知道吗</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
如何根据与其他行比较的列表筛选序列?
3 回答
如何根据与前一行的差异对行进行分组?
6 回答
如何根据与另一个图像匹配的图像特征来变换图像?
10 回答
如何根据与另一个模型的关系在模板视图中查询另一个Django模型
3 回答
如何根据与已知参考轨迹的距离过滤出位置数据?
8 回答
如何根据与现有值比较的下限和上限创建新的pandas系列
9 回答
如何根据与输入字符串共享的特征从数据集中获取值
6 回答
如何根据与长生不老药的多对多关系排序?
9 回答
如何根据世代显示,x'攻击'和y'防御'
9 回答
如何根据两个CSV文件中的公共信息用Python合并两个CSV文件?
9 回答
如何根据两个CSV文件的相似性比较它们的行?
6 回答
如何根据两个不同列的值在一列中填充NaN
7 回答
如何根据两个不同列的日期获取交叉联接表的唯一记录?
7 回答
如何根据两个不同列表中的相应值创建if语句?
3 回答
如何根据两个不同栏目的分数组成三个不同的班级,有人能指导我吗,请参考我的代码
2 回答
如何根据两个不同的字符串检查变量?9行examp
4 回答
如何根据两个值对词典进行分组?
2 回答
如何根据两个列表获得自定义元组的计数
10 回答
如何根据两个变量的条件打印特定输出
6 回答
如何根据两个变量重新采样以均匀地派生类?
7 回答