|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
小甲鱼老师本来写的代码为:
import easygui as g
msg = "请填写以下联系方式"
title = "账号中心"
fieldNames = [" *用户名", " *真实姓名", " 固定电话", " *手机号码", " QQ", " *E-mail"]
fieldValues = []
fieldValues = g.multenterbox(msg,title, fieldNames)
while 1:
if fieldValues == None:
break
#好奇怪啊,难道啥都不输不是None吗.不是,是六个空字符串
#但我不理解这步存在的意思了
#休息一下我大脑不能思考了
errmsg = ""
for i in range(len(fieldNames)):#fieldName是指前面的东西
option = fieldNames[i].strip() #你给前面的东西去空格干什么
if fieldValues[i].strip() == "" and option[0] == "*":
errmsg += ('【%s】为必填项。\n\n' % fieldNames[i])
if errmsg == "":
break
fieldValues = g.multenterbox(errmsg, title, fieldNames, fieldValues)
print("用户资料如下:%s" % str(fieldValues))
运行下来有空的话会保存本来已经输入的东西
但我自己仿写的
#我是这么想的,1、首先肯定得用multenterbox
#2、还需要用点办法凡是哪几个选项没有就不行
#3、实现存储估计需要字典,空白的需要默认值
import easygui as g
#接下来应该可以开始显示界面和存储了,不过如果缺东西的话要提不行外加不能重复输入
msg = '【*真实姓名】为必填项。\n【*手机号码】为必填项。\n【*E-mail】为必填项。'
title = '账号中心'
fields_list = ['*用户名','*真实姓名',' 固定电话','*手机号码',' QQ','*E-mail']
fieldValues = []
fieldValues = g.multenterbox(msg,title,fields_list)
while True:
if fieldValues == None:
break
errmsg =''#这是干嘛用的呀
for i in range(len(fields_list)):
option = fields_list[i].strip()#option就是用户名,真实姓名之类的
if fieldValues[i].strip() == '' and option[0] == '*':
errmsg += ('【%s】为必填项。\n\n'%fields_list[i])
if errmsg == '':
break
fieldValues = g.multenterbox(msg,title,fields_list)
print('用户资料如下:%s'%str(fieldValues))
#这边有个问题,不为空值有什么好的写法吗
#现在有个很尴尬的问题,我感觉如果不输满会错位
#算了先想想别的问题
#感觉还是需要字典
#感觉很接近了但还是有个问题,等于一个空着就要重填,有什么好办法吗
#奇了怪了,为啥我预算的循环不成功
#我肯定有什么地方打错了
运行下来本来已经输入的信息就全没了,为什么会这样呀,只能全部重新输入 |
|