Python 变量没有递增

Python variable is not being incremented

我正在尝试使用 python(tkinter GUI)制作一个简单的计算器。但是,当我尝试递增我的指针变量时,它不起作用。据我所知,这是因为我的指针变量不是全局变量,我没有将其声明为全局变量。但即使在我这样做之后,它仍然无法正常工作。有人可以解释为什么吗?

from tkinter import * 

root = Tk()
root.title("Calculator (Simple)")

entrybox = Entry(root, width = 40, borderwidth= 5)
entrybox.grid(row=0, column=0, columnspan=3, padx=10, pady=10)

global pointer
pointer = 0

def button_entry(num):
    pointer += 1
    number = entrybox.get() + num
    entrybox.delete(0, END)
    entrybox.insert(0, number)
    print(pointer)

global pointer 应该在第 1 行的函数内 button_entry 内。

您必须将全局指针放在函数中,而不是外部,因为它告诉 python 解释器您需要使用此函数中未描述的变量,并且它在全局范围内

from tkinter import * 

root = Tk()
root.title("Calculator (Simple)")

entrybox = Entry(root, width = 40, borderwidth= 5)
entrybox.grid(row=0, column=0, columnspan=3, padx=10, pady=10)

pointer = 0

def button_entry(num):
    global pointer
    pointer += 1
    number = entrybox.get() + num
    entrybox.delete(0, END)
    entrybox.insert(0, number)
    print(pointer)