鱼C论坛

 找回密码
 立即注册
查看: 522|回复: 1

哪位大神帮忙看看模仿标准答案写的编码为什么和答案运行不同啊

[复制链接]
发表于 2018-10-28 21:31:44 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

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))
            
#这边有个问题,不为空值有什么好的写法吗
#现在有个很尴尬的问题,我感觉如果不输满会错位
#算了先想想别的问题
#感觉还是需要字典
#感觉很接近了但还是有个问题,等于一个空着就要重填,有什么好办法吗
#奇了怪了,为啥我预算的循环不成功
#我肯定有什么地方打错了
运行下来本来已经输入的信息就全没了,为什么会这样呀,只能全部重新输入
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-10-29 17:32:57 | 显示全部楼层
6666
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-7-3 10:38

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表