繁体   English   中英

NameError:未定义名称“page_num”

[英]NameError: name 'page_num' is not defined

#传递 Pdf 文件的路径将打开一个 pdf 阅读器 window

def text_extract(path):
page_num = 0  # variable assignment
root = Tk()   tkinter wiindow
pdf = PdfFileReader(path)  
def page_update(page_num):           #function to update text gui on the basis of page number
    page_obj = pdf.getPage(page_num)
    txt = page_obj.extractText()
    text_wig.delete("1.0", "end")
    text_wig.insert(END,txt)
def page_prev(e=1):        #to see previous page
    global page_num
    if page_num <= 0:
        messagebox.showinfo('Alert','Its a first page')
    else:
        page_num = page_num -1
        page_update(page_num)
def page_next(e=1):        # for next page
    global page_num
    if page_num >= pdf.numPages:
        messagebox.showinfo('Alert','Its a last page')
    else:
        page_num = page_num + 1
        page_update(page_num)


Button(root, text='Prev',command = page_prev).grid(row=0, column=1)
Button(root, text='Next',command = page_next).grid(row=0, column=2)
page_obj = pdf.getPage(page_num)
txt = page_obj.extractText()
text_wig = Text(root)
text_wig.grid(row=1, column=1, rowspan=10,columnspan=10)
text_wig.delete("1.0", "end")
text_wig.insert(END,txt)
root.mainloop()

#this 仅显示 pdf 的第一页 next 或 prev 按钮不起作用

如果 function 中有一个值,并且您需要在 function 之外使用或编辑它,则必须在定义或编辑它之前编写global page_num

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM