python3中的END参数是什么



下面有一个简单的python3代码:

from tkinter import *
root = Tk()
e = Entry(root,width=30)
e.grid(row=0,column=0,columnspan=3)
e.delete(0,END)
root.mainloop()

我的问题是,第5行的END论点是什么。我的意思是它不是一根绳子,那它是什么??这也不是一个变量。如果我将变量作为参数传递给函数,则需要对其进行预定义。那么END参数从何而来???

它是字符串"结束"结束";是CCD_ 3小部件方法CCD_。它的意思是";文本的末尾";

它是在执行from tkinter import *时从tkinter模块导入的。

这很好地说明了为什么通配符导入不是导入模块的首选方式——它隐藏了变量、函数和类的来源,并使代码更难理解。如果代码完成了import tkinter as tk并随后使用了tk.END,那么它的来源就很明显了。

它只是一个字符串"end",但在tkinter代码中有一个特殊的含义(允许您删除示例中的所有文本(。但这并不意味着你必须在那里传递一个字符串。也就是说,如果你不传入END,那么你可能会传入一个int——一个你想要删除的范围末尾的数字索引。例如

e.delete(0,5)

这将删除前四个字符。

从文档(https://effbot.org/tkinterbook/entry.htm#:~:text=结束%20(或%20%E2%80%9结束%E2%80%9D(,将%20从%20更改为%20程序。(,

";END(或"END"(对应于条目小部件中最后一个字符之后的位置。范围(0,END(对应于小部件中的所有字符">

最新更新