Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/304.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 如果语句混乱,[-1]是什么意思?_Python_Python 3.x - Fatal编程技术网

Python 如果语句混乱,[-1]是什么意思?

Python 如果语句混乱,[-1]是什么意思?,python,python-3.x,Python,Python 3.x,这是我混淆的代码 from tkinter import * root = Tk() root.geometry("100x200") def changeOne(): if B.config('text')[-1] == "ITE 003": B.config(text="Hello", fg="red") else: B.config(text="ITE 003", fg ="green") def changeTwo(): if

这是我混淆的代码

from tkinter import *
root = Tk()
root.geometry("100x200")

def changeOne():
    if B.config('text')[-1] == "ITE 003":
        B.config(text="Hello", fg="red")
    else:
        B.config(text="ITE 003", fg ="green")

def changeTwo():
    if label.config('text')[-1] == "Green Text":
        B2.config(fg ="red")
        label.config(text ="Red Text", fg = "red")
    else:
        B2.config(fg ="green")
        label.config(text ="Green Text", fg = "green")

B = Button(root, text = "Hello", fg="red", command=changeOne)

B2 = Button(root, text = "Click Me", fg="red", command=changeTwo)

label = Label(root, text ="Red Text", fg = "red")

B.place(x = 10,y = 10)
B2.place(x = 10, y = 40)
label.place(x = 10, y = 70)
root.mainloop()
这部分if条件存在问题:
如果B.config('text')[-1]==“ITE 003”:
,则
[-1]
。我真的不明白
[-1]
如何帮助检索实际按钮的文本值,为什么它需要
[-1]
?它像数组吗?

当您想从最右边开始访问列表中的元素时,可以使用从-1开始的负索引值来引用它。请参阅下面提到的示例

>>> li = [1,2,3,4]
>>> li[1]
2
>>> li[0]
1
>>> li[-1]
4
>>> li[-2]
3

这是一个数组的东西
myarray[-1]
将访问
myarray
的最后一个元素,即使我不知道它的大小。谢谢您的回答!但这是否意味着B.config('text')是一个数组?“text”的值在其数组的最右端?如果我想获得不同配置选项的值,我必须始终使用[-1]?@Orenjie
B
是Button类型的对象。当使用参数“text”调用方法
config
时,它返回一个值列表。现在,从这些返回的列表值中,您知道所需的值存在于列表的最后一个索引中。但是,您不想浪费时间计算列表的长度,然后检查最后一个值。为了使事情更简单,可以使用负索引。如果你想要不同配置选项的值,你必须使用相同或不同的索引值。我现在完全理解了,非常感谢!快乐学习@Orenjie!