一、基本语法
1、msgbox()
显示一个消息和提供一个"OK"按钮,你可以指定任意的消息和标题,你甚至可以重写"OK"按钮的内容
msgbox(msg='(Your message goes here)', title=' ', ok_button='OK', image=None, root=None)
2、ccbox()
提供一个选择:Continue 或者 Cancel,并相应的返回 1(选中Continue)或者 0(选中Cancel)
ccbox(msg='Shall I continue?', title=' ', choices=('Continue', 'Cancel'), image=None)
3、buttonbox()
定义自己的一组按钮,buttonbox() 会显示一组你定义好的按钮。当用户点击任意一个按钮的时候,buttonbox() 返回按钮的文本内容。如果用户取消取消或者关闭窗口,那么会返回默认选项(第一个选项)。
buttonbox(msg='', title=' ', choices=('Button1', 'Button2', 'Button3'), image=None, root=None)
4、choicebox()
为用户提供了一个可选择的列表,使用序列(元祖或列表)作为选项,这些选项显示前会按照不区分大小写的方法排好序
choicebox(msg='Pick something.', title=' ', choices=())
5、multchoicebox()
函数也是提供一个可选择的列表,支持用户选择 0 个,1 个或者同时选择多个选项。
multchoicebox(msg='Pick as many items as you like.', title=' ', choices=(), **kwargs)
6、enterbox()
为用户提供一个最简单的输入框,返回值为用户输入的字符串。默认返回的值会自动去除首尾的空格,如果需要保留首尾空格的话请设置参数 strip=False。
enterbox(msg='Enter something.', title=' ', default='', strip=True, image=None, root=None)
7、passwordbox()
跟 enterbox() 样式一样,不同的是用户输入的内容用"*"显示出来,返回用户输入的字符串:
passwordbox(msg='Enter your password.', title=' ', default='', image=None, root=None)
二、一个实例
import sys
import easygui as g
while 1:
g.msgbox('欢迎进入车协的东湖魔法世界')
msg = '请问你想玩什么游戏呢?'
title = '小游戏互动'
choices = ['你画我猜','高铁竞速','跳房子']
choice = g.choicebox(msg,title,choices)
g.msgbox('你的选择是:'+ str(choice),'结果') #结果对应title
msg = '你希望重新开始游戏吗?'
title = '请选择'
if g.ccbox(msg,title): #cc对应 contine 和 cancel
pass
else:
sys.exit(0)
运行:
三、补充sys模块
sys模块内含很多函数方法和变量,用来处理Python运行时配置以及资源,从而可以与前当程序之外的系统环境交互。通俗来讲,sys模块负责程序与python解释器的交互,提供了一系列的函数和变量,用于操控python运行时的环境。
import sys
sys.argv #实现从程序外部向程序传递参数,sys.argv[0]表示代码本身的文件路径,所以参数从1开始
sys.platform #获取当前执行环境的平台
sys.path #打印该模块的环境变量
sys.stdin, sys.stdout, sys.stderr #标准输入,标准输出,错误输出
四、实战
1、猜数字游戏
import easygui as g
g.enterbox('不妨猜一下我心里想的是哪个数字(1~10):', '数学小游戏')