鱼C论坛

 找回密码
 立即注册
查看: 717|回复: 3

[已解决]第035讲:图形用户界面入门 习题一的问题

[复制链接]
发表于 2018-12-24 17:29:17 | 显示全部楼层 |阅读模式
20鱼币
import easygui as g

msg = "请填写以下联系方式"
title = "账号中心"
fieldNames = [" *用户名", " *真实姓名", "  固定电话", " *手机号码", "  QQ", " *E-mail"]
fieldValues = []
fieldValues = g.multenterbox(msg,title, fieldNames)

while 1:
    if fieldValues == None:    #这边为什么要设置这样一个条件?#
        break
    errmsg = ""
    for i in range(len(fieldNames)):
        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))
    



有点不能理解上面的思路,为什么要设置那两个条件?(已在代码中标注出##)
最佳答案
2018-12-24 17:29:18

第一个#,当用户cancel的时候,filedValues返回值为None。

什么时候返回None,我记得老师帖子里面有讲。

第二个#,没有提示消息的时候(*号都输入了),程序正常跳出循环。

最佳答案

查看完整内容

第一个#,当用户cancel的时候,filedValues返回值为None。 什么时候返回None,我记得老师帖子里面有讲。 第二个#,没有提示消息的时候(*号都输入了),程序正常跳出循环。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-12-24 17:29:18 | 显示全部楼层    本楼为最佳答案   

第一个#,当用户cancel的时候,filedValues返回值为None。

什么时候返回None,我记得老师帖子里面有讲。

第二个#,没有提示消息的时候(*号都输入了),程序正常跳出循环。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2019-2-21 10:42:12 | 显示全部楼层
heidern0612 发表于 2018-12-24 17:29
第一个#,当用户cancel的时候,filedValues返回值为None。

什么时候返回None,我记得老师帖子里面有讲 ...

请问,为什么第一个break没有跳出循环,但是第二个就跳出循环了呢?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-4-4 19:23:34 | 显示全部楼层
MargaretDdarcy 发表于 2019-2-21 10:42
请问,为什么第一个break没有跳出循环,但是第二个就跳出循环了呢?

第一个是取消退出
第二个是带*的填完退出
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-25 23:18

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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