Python3.7 on "NameError: name 'showwarning' is not defined"
问题描述
NameError: name 'showwarning' is not defined
解决办法
from tkinter.messagebox import showwarning
教材原代码示例
Python3.7新代码示例:
from tkinter import Tk
from tkinter.messagebox import showwarning
from time import sleep
import win32com.client as win32
warn = lambda app:showwarning(app,'Exit?')
RANGE = range(3,8)
def excel():
app = 'Excel'
xl = win32.gencache.EnsureDispatch('%s.Application'%app)
ss = xl.Workbooks.Add()
sh = ss.ActiveSheet
xl.Visible = True
sleep(1)
sh.Cells(1,1).Value = 'Python-to-%s Demo'%app
sleep(1)
for i in RANGE:
sh.Cells(i,1).Value = 'Line %d'%i
sleep(1)
sh.Cells(i+2,1).Value = "Th-th-th-that's all folks!"
warn(app)
ss.Close(False)
xl.Application.Quit()
if __name__=='__main__':
Tk().withdraw()
excel()