波大大12138 发表于 2020-6-16 09:34:54

实现用于登记账户信息的界面


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.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))
    我有几个问题不理解1:fieldvalues在第六行不是定义为一个空的列表了吗,为什么到了下面循环的时候还要判断他是否是空呢?2:errmsg和msg在这里的区别是啥为什么使用两个不同的变量呢都用msg不可以吗?3:第12行errmsg定义为空字符串了为什么17行还要判断他是否是空呢

波大大12138 发表于 2020-6-16 17:08:26

@Twilight6

今天的我更强了 发表于 2020-6-16 17:34:39

尝试着回答一下:
1.在第7行 fieldValues = g.multenterbox(msg, title, fieldNames) 对fieldValues进行了重新赋值所以第十行是为了判断刚才有没有填写内容,如果填写了就不是为空了。
2.errmsg是带*的 是必须填的变量名
3.第17行是为判断必须填的变量 是不是都填了,如果都填了errmsg就为空,就可以跳出循环了。
好几天之前学的,可能有遗忘 如果有些地方解释的不对还望谅解
页: [1]
查看完整版本: 实现用于登记账户信息的界面