《剑指offer》Python版

05替换空格

2019-01-17  本文已影响0人  gantrol

请实现一个函数,把字符串中的每个空格替换成"%20"。例如输入“We are happy.”,则输出“We%20are%20happy.”。

# -*- coding:utf-8 -*-
"""
其实,Python的字符串是不可变
没有C++那种像字符串的问题,
但这也导致了,必然多出了空间上的消耗。
"""
def replaceSpace(strings):
    return strings.replace(' ', '%20')

def my_replaceSpace(strings):
    result = ''
    for letter in strings:
        if letter == ' ':
            letter = '%20'
        result += letter
    return result

# def replaceSpace2(strings):
#     pieces = strings.split()
#     result = ''
#     for piece in pieces:
#         result += piece + '%20'
#     result -= '%20'  ## 不可行

if __name__ == '__main__':
    assert replaceSpace('124322') == '124322'
    assert replaceSpace('124 322') == '124%20322'
    assert replaceSpace('123  4566 4356') == '123\%20\%204566\%204356'
    assert replaceSpace(' 124322') == '%20124322'
    assert replaceSpace('124322 ') == '124322%20'
    assert replaceSpace('') == ''
    assert replaceSpace('  ') == '124322%20'
    assert replaceSpace('   ') == '\%20\%20\%20'
# 网站
# https://www.nowcoder.com/practice/4060ac7e3e404ad1a894ef3e17650423?tpId=13&tqId=11155&tPage=1&rp=1&ru=/ta/coding-interviews&qru=/ta/coding-interviews/question-ranking
上一篇 下一篇

猜你喜欢

热点阅读