Discuss / Python / 我给个不一样的答案

我给个不一样的答案

Topic source

def trimTop(s):
    if s == '':
        # 避免一次for循环都不进导致index未定义
        return s
    # 寻找最后一个前缀空格的位置
    flag = 0
    for index, item in enumerate(s):
        if (item != ' '):
            # 如果当前这个item不是空格,说明index之前的都应该被切掉
            flag = 1
            break

    if flag == 0:
        # 说明全是空格,全部切
        return s[len(s):]
    else:
        return s[index:]


def treimTail(s):
    if s == '':
        # 避免一次for循环都不进导致index未定义
        return s
    # 寻找最前一个后缀空格的位置
    flag = 0
    for index, item in enumerate(s[::-1]):
        if (item != ' '):
            # 如果当前这个item不是空格,说明index之前的都应该被切掉
            flag = 1
            break

    if flag == 0:
        # 说明全是空格,全部切
        return s[len(s):]
    else:
        # 倒序循环计算出原来的索引位置
        # 拿笔在纸上写写就知道了
        index = len(s) - 1 - index
        # 但是这个位置需要包含
        index = index + 1
        return s[:index]


def trim(s):
    s = trimTop(s)
    s = treimTail(s)
    return s

  • 1

Reply