您的位置:首页 > 文旅 > 美景 > python机器学习3

python机器学习3

2024/10/6 14:36:45 来源:https://blog.csdn.net/m0_63860007/article/details/140241337  浏览:    关键词:python机器学习3

1.窗口GUI函数库

Python也提供了用于开发图形用户界面(GUI)的各种功能,常见的函数库如下。

· Tkinter:这是Python附带的Tk GUI工具包中的Python函数库,本章会详细介绍。

· wxPython:这是一个用于wxWindows的图形用户界面,官方网址为http://wxpython.org。

· JPython:这是一个以Java为基础的Python函数库,使用Java的GUI类为基础的Python GUI程   序。

· PyQt:这是一个以Qt为基础的Python函数库,使用Qt的Python GUI程序。

Tkinter是Python的标准GUI图形化使用界面,支持跨平台功能,是当前Python开发者使用最多的函数库。它已经包含在Python的安装程序中,不用另外再通过pip安装。

使用Tkinter创建GUI应用程序,步骤如下:

(1)导入Tkinter模块。

(2)创建GUI应用程序的主窗口。

(3)将一个或多个控制件添加到主窗口中。

(4)程序做无限循环,等待用户触发每个组件的事件,并做相应的反应。

try:import Tkinter as tk
except ImportError:import tkinter as tk
win=tk.Tk()
win.wm_title("hello,word!")
win.minsize(width=666,height=480)
win.maxsize(width=666,height=480)
win.resizable(width=False,height=False)
win.mainloop()

 2.文字Label

如何在窗口中加入文字组件,然后显示在窗口上。需要特别注意两个函数pack和place,它们的作用都是把组件加到窗口中,其差异如下:

· pack(),依照使用的先后顺序放入窗口。

· place(),在窗口中X、Y指定的位置加入文字组件。

try:import Tkinter as tk
except ImportError:import tkinter as tkwin=tk.Tk()
label1=tk.Label(win,text="hello,word")
label1.pack()
label2=tk.Label(win,text="hello no2",fg="red",bg="yellow")
label2.pack()
label3=tk.Label(win,text="hello,no3")
label3.pack(side="top",anchor="w")
label4=tk.Label(win,text="hello,no3")
label5=tk.Label(win,text="powen",bg="#ff0000")
label5.place(x=120,y=140)
win.mainloop()

3.显示图片Image

try:import tkinter as tkfrom PIL import ImageTk, Imagewin = tk.Tk()img_path = r"C:/Users/nsy/Desktop/58.jpg"try:img = ImageTk.PhotoImage(Image.open(img_path))except IOError:print(f"Cannot open image file: {img_path}")win.destroy()  # 如果无法加载图像,关闭窗口raiselabel1 = tk.Label(win, image=img)label1.pack()win.mainloop()
except ImportError:print("Tkinter or PIL is not installed.")

4.按键Button

介绍如何新增按键,并且处理用户按下按键之后的反应动作。按键的方法如下:在程序中通过tk.Button添加一个按键,并指定该按键按下去后,会调用event1自定义的函数。

try:import Tkinter as tk
except ImportError:import tkinter as tk
def event1():print("btn1 presses.")
btn1=tk.Button(win,text="press.me",command=event1)
btn1.pack()
win.mainloop()

5.消息窗口tkMessageBox

tkMessageBox,用来显示消息和询问用户的选择。

· showinfo:显示消息。

· showwarning:警告消息。

· showerror:显示错误。

· askquestion:询问问题。

· askokcancel:确认或取消。

· askyesno:是或否。

· askretrycancel:询问要重新运行或取消。

try:import Tkinter as tkimport tkMessageBox
except ImportError:import tkinter as tkimport tkinter.messagebox as tkMessageBox
def hello():tkMessageBox.showinfo("say,hello")
win=tk.Tk()
B1=tk.Button(win,text="say hello")
B1.pack()
win.mainloop()

6.输入框Entry

如何新增输入框Entry,并且取得用户所输入的数据。

try:import Tkinter as tk
except ImportError:import tkinter as tkdef event1():t1 = entry1.get()var_.set(t1)root = tk.Tk()
entry1 = tk.Entry(root)
entry1.pack()btn1 = tk.Button(root, text="press me", command=event1)
btn1.pack()var_ = tk.StringVar()
label1 = tk.Label(root, text="hello", textvariable=var_)
label1.pack()var_.set("New text")root.mainloop()

7.绘图Canvas

介绍如何使用Canvas绘图的功能,并且依次展示画出圆饼图、显示图片等结果。在该Canvas绘图中比较特别的是bind函数,它可以获取鼠标相关的位置。运行的时候,在窗口上面通过鼠标的单击和拖动,可以体验到bind()的功能,可以绘制出图画。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com