请问如下代码中的 if errmsg = "" 为啥要用break跳出循环
import easygui as gmsg = "请填写以下联系方式"
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.strip()
if fieldValues.strip() == "" and option == "*":
errmsg += ('【%s】为必填项。\n\n' % fieldNames)
if errmsg == "":
break
fieldValues = g.multenterbox(errmsg, title, fieldNames, fieldValues)
print("用户资料如下:%s" % str(fieldValues))
请问:
if easmsg == ""
break
这两行代码是什么意思??? 意思是如果用户必填项都填了,那么就不用再询问一遍,直接跳出循环,打印用户资料。
while 循环中,初始化 errmsg = "" ,errmsg 是为空字符串的
然后 while 里面的 for 循环是为了判断你带 * 号的 输入框有没输入内容,如果没有就将提示语句拼接到errmsg 上
当你 errmsg 拼接上去的时候,就说明你有 * 号必填项输入框没有输入,此时应该调用下面的g.multenterbox 来提醒你未正确输入内容
而当你 for 循环过程中,没有漏填 * 号必填项,那么说明你输入正确,就不需要 g.multenterbox再次提醒,而是成功输入 break 退出循环,就是通过:if errmsg == "":
break这串代码,才能在你输入框内带 * 号的都输入完成后就成功退出了循环
Twilight6 发表于 2020-7-13 07:53
while 循环中,初始化 errmsg = "" ,errmsg 是为空字符串的
然后 while 里面的 for 循环是为了判 ...
嗯呐,通了通了~~
页:
[1]