Python中文
首页
教程
问答
标签
搜索
登录
注册
如何在类中使用lambda作为方法?
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>这就是我要做的</p> <pre><code>class BaseClass(object): successify = lambda x: "<Success>%s</Success>" % x errorify = lambda x: "<Error>%s</Error>" % x def try1(self): print successify("try1") def try2(self): print self.successify("try2") </code></pre> <p>但这两种方法都不管用。。</p> <pre><code>>>> BaseClass().try1() Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<stdin>", line 5, in try1 NameError: global name 'successify' is not defined >>> BaseClass().try2() Traceback (most recent call last): File "<stdin>", line 1, in <module> File "<stdin>", line 7, in try2 TypeError: <lambda>() takes exactly 1 argument (2 given) </code></pre> <p>如何在类中使用lambdas作为方法?</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>如果您想作为对象函数访问<code>successify</code>,那么第一个参数是<code>self</code>,表示对象实例。</p> <p>如果必须使用<code>self.successify</code>,则必须更改lambada函数</p> <pre><code>successify = lambda self, x: "<Success>%s</Success>" % x </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
jupyter运行一个旧的pytorch版本
3 回答
Jupyter运行不同版本的卸载库?
5 回答
Jupyter运行指定的键盘快捷键
8 回答
Jupyter通过.local文件“逃逸”virtualenv。我该如何缓解这种情况?
2 回答
Jupyter重新加载自定义样式
5 回答
Jupyter错误:“没有名为Jupyter_core.paths的模块”
3 回答
jupyter错误:无法在随机林中将决策树视为png
7 回答
Jupyter错误'内核似乎已经死亡,它将自动重新启动'为一个给定的代码块
1 回答
Jupyter错误地用阿拉伯语和字母数字元素显示Python列表
6 回答
Jupyter隐藏数据帧索引,但保留原始样式
5 回答
Jupyter集线器:启动器中出现致命错误。。。系统找不到指定的文件
7 回答
Jupyther中相同值的相同哈希,但导出到Bigquery时不相同
6 回答
Jupy上Python的读/写访问问题
1 回答
jupy上没有模块cv
4 回答
Jupy上的排序错误
6 回答
Jupy中bqplot图形的紧凑布局
7 回答
Jupy中matplotlib plot的连续更新
7 回答
Jupy中Numpy函数的文档
7 回答
Jupy中Pandas的自动完成问题
2 回答
jupy中Qt后端的Matplotlib动画
5 回答