python中while判断条件问题...求详细解释 不是很理解
name=''whilenotname:name=raw_input(u'请输入姓名:')printname...
name=''
while not name:
name=raw_input(u'请输入姓名:')
print name 展开
while not name:
name=raw_input(u'请输入姓名:')
print name 展开
4个回答
展开全部
首先name=‘ ’,后面是个空字符串,在学习布尔表达式的时候就说过,这些空的都是等于False的。
while not name:
可以看成是while循环语句加一个布尔表达式not name:可以理解为 如果name为空的话 not name是成立的也就是值为True
若是name=‘michael’ 那就是有名字,not name不成立这个布尔表达式的值就是False.
while 语句后面有的是直接跟变量名,有的是跟这种布尔表达式,但是不管是哪种他们的值都是要么为True要么为False
true就循环执行后面的子语句(有缩进的),False就pass后面的子语句
以后还会学习到while True这种循环语句,就是他的进化。
while not name:
可以看成是while循环语句加一个布尔表达式not name:可以理解为 如果name为空的话 not name是成立的也就是值为True
若是name=‘michael’ 那就是有名字,not name不成立这个布尔表达式的值就是False.
while 语句后面有的是直接跟变量名,有的是跟这种布尔表达式,但是不管是哪种他们的值都是要么为True要么为False
true就循环执行后面的子语句(有缩进的),False就pass后面的子语句
以后还会学习到while True这种循环语句,就是他的进化。
展开全部
看来你对python的格式不是很了解哦~~!(没有花括号{}而是用换行代替)
name=‘’说明定义了一个name为空字符有值但没内容系统会为这个变量分配空间(跟为null是有区别的 null不会分配空间);
while not name 相当于c下的while(!name ){}意思是如果name不为空(!name即name不为null)而这句话必然要执行,因为定义了name = ‘’,说明有值,只是这个值是没有内容,所以这句话一定会执行,执行下面一句话,你可以把这句话放到{}里看一眼就明白了,raw_input这个函数就是要接收你输入的值,而把输入的值赋给变量name ,从此之后name就是你输入的值了,而不是''了,而楼上说得有点小问题,因为他把not name看成null了;这样的话while not name 的语句就不会执行了哦,选我吧~~!!!!
name=‘’说明定义了一个name为空字符有值但没内容系统会为这个变量分配空间(跟为null是有区别的 null不会分配空间);
while not name 相当于c下的while(!name ){}意思是如果name不为空(!name即name不为null)而这句话必然要执行,因为定义了name = ‘’,说明有值,只是这个值是没有内容,所以这句话一定会执行,执行下面一句话,你可以把这句话放到{}里看一眼就明白了,raw_input这个函数就是要接收你输入的值,而把输入的值赋给变量name ,从此之后name就是你输入的值了,而不是''了,而楼上说得有点小问题,因为他把not name看成null了;这样的话while not name 的语句就不会执行了哦,选我吧~~!!!!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
程序本身没有任何问题。如果有也是少了一个coding:cp936之类的。
推荐答案是对的。在python里None, '', 都是False。
推荐答案是对的。在python里None, '', 都是False。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果没有输入就一直提示user输入姓名
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询