Python tkinter,label没有属性'count'

时间:2017-12-21 23:24:19

标签: python-3.x tkinter

我收到一条错误消息:

sentences = text.count(".") + text.count("!") + text.count("?")
AttributeError: 'Label' object has no attribute 'count'

我可以使用什么代替.count来计算项目?

2 个答案:

答案 0 :(得分:1)

直接访问Label对象将无法获取其文本。您需要text["text"].counttext.cget("text").count。要么从标签中提取实际文本。可以将Tkinter对象视为字典,其中查找键是其attributescget代表"配置get"并允许您更安全地检索属性。

答案 1 :(得分:1)

这是因为对象text未实现函数count()

假设您引用的text对象是tkinter Label,则需要像这样调用count()

text["text"].count(string)

所以你发布的那一行会是这样的:

sentences = text["text"].count(".") + text["text"].count("!") + text["text"].count("?")

此外,我建议您将变量名称text更改为更具描述性的其他内容,以避免将来出现混淆。