快乐开心 发表于 2021-6-7 22:34:28

python

# p10_3.py
import easygui as eg

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

fieldValues =[]
fieldValues = eg.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 += (f'【{fieldNames}】为必填项。\n\n')
    if errmsg == "":
      break
    fieldValues = eg.multenterbox (errmsg,title,fieldNames,fieldValues)
print(f'用户资料如下:{str(fieldValues)}')

标红的语句是什么意思

suchocolate 发表于 2021-6-8 09:36:44

如果fieldValues.strip()等于空字符串

快乐开心 发表于 2021-6-8 10:36:30

suchocolate 发表于 2021-6-8 09:36
如果fieldValues.strip()等于空字符串

出错了上面的改为 fieldValues.strip()
是什么意思

Twilight6 发表于 2021-6-8 10:54:40

快乐开心 发表于 2021-6-8 10:36
出错了上面的改为 fieldValues.strip()
是什么意思



strip 函数是去除字符串前后的空格,所以 fieldValues[ i].strip() == ""

是经过 strip 函数去除前后空格后,若字符串只有空格,则经过 strip 函数结果就是空字符串

简得来说这整句的 if 语句就是防止你输入的字符是纯空格,且属于 * 号必填项时发出提示

页: [1]
查看完整版本: python