Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/287.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 获取Tkinter文本小部件中的总行数?_Python_Text_Tkinter_Lines - Fatal编程技术网

Python 获取Tkinter文本小部件中的总行数?

Python 获取Tkinter文本小部件中的总行数?,python,text,tkinter,lines,Python,Text,Tkinter,Lines,我有一个TkinterText小部件,我想知道它包含多少行 我知道text.cget(“height”)方法,但是它只告诉我显示了多少行。我想知道总共有多少行 我正在使用这些信息,试图使我自己的自定义滚动条,所以任何帮助将不胜感激 使用index方法查找'end'的值,该值正好位于缓冲区中最后一个字符之后 >>> text_widget.index('end') # returns line.column '3.0' >>> int(text_widge

我有一个Tkinter
Text
小部件,我想知道它包含多少行

我知道
text.cget(“height”)
方法,但是它只告诉我显示了多少行。我想知道总共有多少行


我正在使用这些信息,试图使我自己的自定义滚动条,所以任何帮助将不胜感激

使用
index
方法查找'end'的值,该值正好位于缓冲区中最后一个字符之后

>>> text_widget.index('end')  # returns line.column 
'3.0'

>>> int(text_widget.index('end').split('.')[0]) - 1  # returns line count
2 
根据Bryan Oakley的评论更新

>>> int(text_widget.index('end-1c').split('.')[0])  # returns line count
2 

您还可以使用
'end-1c'
来避免必须减去1(尽管“.”后面的值将是最后一行的字符数,而不是零)。谢谢,这非常有用!当我完成当前的项目后,我可能会发布一些作为Tkinter扩展而制作的小部件。如果有兴趣。如果您需要全部显示行,请在此处查看我的答案以获取帮助(并相应更改开始和结束,并编辑我最终回答的是剩余行而不是全部):