在python tkinter中比较两个索引时遇到问题

时间:2016-07-05 04:59:15

标签: python python-3.x tkinter

我不明白这里的逻辑:

import tkinter
t = tkinter.Text()
print(t.compare('1.2', '<', '1.3'))
print(t.compare('1.2', '>', '1.3'))
print(t.compare('1.2', '==', '1.3'))

输出False,False,True。 我认为你应该能够将索引与Text小部件的compare函数进行比较。索引是'line.char'中的字符串。

感谢。

1 个答案:

答案 0 :(得分:0)

compare基于Text小部件对象中的文字。

最初,文字为空。所以任何索引都会返回空字符串;他们被比较相等。

在文本小部件中插入一些字符串,然后您将看到差异:

>>> t.insert(0.0, 'asdf')
>>> print(t.compare('1.2', '==', '1.3'))  # Comparing 'd' with 'f'
False
>>> print(t.compare('1.2', '<', '1.3'))
True
>>> print(t.compare('1.2', '>', '1.3'))
False