Discuss / Python / 喜欢这个解法

喜欢这个解法

Topic source

Resalee

#1 Created at ... [Delete] [Delete and Lock User]
def trim(s):
    if len(s) != 0:
        while s[:1] == ' ':
            s = s[1:]
        while s[-1:] == ' ':
            s = s[:-1]
    return s

Qaq阿翔Zzz

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

请问:

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

为什么就会显示错误

恶魔74757

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

然而我用了你这个,结果是对的

while s[:1]==' ':

        s=s[1:]

    while s[-1:]==' ':

        s=s[:-1]

    return s

因为你用while s[0] == '空格',下一行是s =s[1:],而如果输入的s是只含一个空格的字符是无法进行s[1:]切片的,所以机器会报错。


  • 1

Reply