Python变量未递增

Python变量未递增,python,variables,tkinter,increment,Python,Variables,Tkinter,Increment,我正在尝试使用python(TkinterGUI)制作一个简单的计算器。但是,当我尝试递增指针变量时,它不起作用。据我所知,这是因为我的指针变量不是全局变量,并且我没有将其声明为全局变量。但即使我这么做了,它仍然不起作用。有人能解释一下原因吗 from tkinter import * root = Tk() root.title("Calculator (Simple)") entrybox = Entry(root, width = 40, borderwidth=

我正在尝试使用python(TkinterGUI)制作一个简单的计算器。但是,当我尝试递增指针变量时,它不起作用。据我所知,这是因为我的指针变量不是全局变量,并且我没有将其声明为全局变量。但即使我这么做了,它仍然不起作用。有人能解释一下原因吗

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)

全局指针
应位于函数第1行的
按钮项
内。

全局指针
应位于函数第1行的
按钮项
内。

必须将全局指针放在函数内,而不是放在函数外,因为它告诉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)

您必须将全局指针放在函数中,而不是放在函数外部,因为它对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)

全局指针
应该在
按钮_条目
内,而不是与声明一起。是的,它可以工作,谢谢<代码>全局指针应该在
按钮\u条目
内,而不是与声明一起。是的,它可以工作,谢谢!