Python中文
首页
教程
问答
标签
搜索
登录
注册
Python TypeError:“str”对象不能为类调用
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>请帮助我理解这一点。我创建了一个非常简单的程序来尝试理解类。</p> <pre><code>class One(object): def __init__(self, class2): self.name = 'Amy' self.age = 21 self.class2 = class2 def greeting(self): self.name = raw_input("What is your name?: ") print 'hi %s' % self.name def birthday(self): self.age = int(raw_input("What is your age?: ")) print self.age def buy(self): print 'You buy ', self.class2.name class Two(object): def __init__(self): self.name = 'Polly' self.gender = 'female' def name(self): self.gender = raw_input("Is she male or female? ") if self.gender == 'male'.lower(): self.gender = 'male' else: self.gender = 'female' self.name = raw_input("What do you want to name her? ") print "Her gender is %s and her name is %s" % (self.gender, self.name) Polly = Two() Amy = One(Polly) # I want it to print Amy.greeting() Amy.buy() Amy.birthday() </code></pre> <p>问题代码</p> <pre><code>Polly.name() # TypeError: 'str' object is not callable Two.name(Polly)# Works. Why? </code></pre> <p>为什么对类实例Polly调用方法不起作用?我迷路了。我已经看了<a href="http://mail.python.org/pipermail/tutor/2003-May/022128.html">http://mail.python.org/pipermail/tutor/2003-May/022128.html</a>和其他类似的Stackoverflow问题,但我没有理解。非常感谢。</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>变量<em>和</em>是一个名为“name”的函数。以不同的方式命名其中一个,它应该会起作用。</p>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
无法使用Django/mongoengine连接到MongoDB(身份验证失败)
3 回答
无法使用Django\u mssql\u后端迁移到外部hos
3 回答
无法使用Django&Python3.4连接到MySql
5 回答
无法使用Django+nginx上载媒体文件
9 回答
无法使用Django1.6导入名称模式
7 回答
无法使用Django1.7和mongodb登录管理站点
10 回答
无法使用Djangoadmin创建项目,进程使用了错误的路径,因为我事先安装了错误的Python
3 回答
无法使用Djangockedi验证CBV中的字段
8 回答
无法使用Djangocketditor上载图像(错误400)
7 回答
无法使用Djangocron进行函数调用
6 回答
无法使用Djangofiler djang上载文件
6 回答
无法使用Djangokronos
5 回答
无法使用Djangomssql provid
5 回答
无法使用Djangomssql连接到带有Django 1.11的MS SQL Server 2016
8 回答
无法使用Djangomssq迁移Django数据库
10 回答
无法使用Djangonox创建用户
8 回答
无法使用Djangopyodb从Django查询SQL Server
1 回答
无法使用Djangopython3ldap连接到ldap
8 回答
无法使用Djangoredis连接到redis
4 回答
无法使用Django中的FK创建新表
1 回答