Discuss / Python / 为什么if 改成while就测试成功了呢?用if的问题出现在哪里!请教各位!谢谢!

为什么if 改成while就测试成功了呢?用if的问题出现在哪里!请教各位!谢谢!

Topic source

def trim(s):
    if len(s)>0 and s[0] == ' ':
        s = s[1:]
    if len(s)>0 and s[-1] == ' ':
        s = s[:-1]
    return s

因为你没考虑前后都有好几个空格的情况啊[苦笑]

乐乐吧吧

#3 Created at ... [Delete] [Delete and Lock User]

if 是条件,while是循环

if是条件判断,满足条件则执行内部一次。while是循环语句,满足条件执行内部语句,执行结束后再次循环进行判断,如果满足条件则再执行循环的内部语句,不满足条件则跳出循环继续往下执行。这里用if的错误2楼已经告诉你了,建议你再看一下python基础部分内容。

星觅夜

#5 Created at ... [Delete] [Delete and Lock User]

因为需要循环判断,而if只做了一次判断,while才是循环判断,直到判断不满足才进行下一步

def trim(s):    while s[0] == ' ' and len(s)>=1:      s = s[1:]    while s[-1] == ' ' and len(s)>=1:      s = s[:-1]    return s

我这样写,为什么不可以呢


  • 1

Reply