if fieldValues == None:意义何在?
import easygui as gmsg = "请填写以下联系方式"
title = "账号中心"
fieldNames = [" *用户名", " *真实姓名", "固定电话", " *手机号码", "QQ", " *E-mail"]
fieldValues = []
fieldValues = g.multenterbox(msg, title, fieldNames)
while 1:
if fieldValues == None: #这条有意义吗?
break ##感觉这个不会被执行,因为列表fieldValues是不会 == None,那为什么还要这样写呢?那位大神能解释下?小白学习中,望不吝赐教!
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))
用户啥也没选,不就是none? wp231957 发表于 2021-9-10 07:32
用户啥也没选,不就是none?
用户啥也没选,本质上fieldValues是含有空元素的列表,但含有空元素的列表也不会等于None,不信你可以尝试['',''] == None的布尔值,结果是False,所以if fieldValues == None:是不会被执行的,也就没有什么意义啊!
myqf123 发表于 2021-9-10 09:40
用户啥也没选,本质上fieldValues是含有空元素的列表,但含有空元素的列表也不会等于None,不信你可以尝试 ...
那就不清楚了从来不研究easygui 这个鸡肋一样的模块
python 针对复杂的GUI 都是弱项就别提这个简版的gui 没有任何价值 wp231957 发表于 2021-9-10 09:43
那就不清楚了从来不研究easygui 这个鸡肋一样的模块
python 针对复杂的GUI 都是弱项就别提这个 ...
感谢回复! 当然有意义,你点cancel会报错:
Traceback (most recent call last):
File "g:\Python Projects\Temp\a.py", line 15, in <module>
if fieldValues.strip() == "" and option == "*":
TypeError: 'NoneType' object is not subscriptable
这里要提个醒,前面一句
fieldValues = []
没用,因为后面一句也是赋值 ckblt 发表于 2022-2-7 21:14
当然有意义,你点cancel会报错:
感谢回复!
页:
[1]