请实现一个函数,将一个字符串中的每个空格替换成“%20”。
例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。

# -*- coding:utf-8 -*-
class Solution:# s 源字符串def replaceSpace(self, s):str = ''for i in s:if i!=' ':str += ielse:str += '%20'print(i)#print(str)return strdef replaceSpace(self, str):#查找空格的数量blank = 0length = len(str)for i in range(length):if str[i] == ' ':blank += 1print(blank)#扩充字符串长度new_length = blank * 3 + lengthprint(new_length)#设置指针p1 = lenth - 1p2 = new_length - 1while(p1 != p2):if __name__ == '__main__':so = Solution()#s = 'We Are Happy's = 'hello word'print(so.replaceSpace(s))
class Solution:def replaceSpace(self, oldString):blankNumber = 0#空格的数量oldStringLen = len(oldString)#原字符串的长度#遍历原字符串,找出字符串的空格数量for i in range(oldStringLen):if oldString[i] == ' ':blankNumber += 1#计算新字符串的长度newStringLen = oldStringLen + blankNumber * 2#声明新字符串列表(因为字符串是不可改变的)newStringList = [' '] * newStringLen#设置两个指针,分别指向那个原字符串和新字符串的末尾位置point1 = oldStringLen - 1point2 = newStringLen - 1#遍历替换while point1 != point2:#如果两个指针位置不同,则表明没有替换完成if oldString[point1] != ' ':#字符不为空newStringList[point2] = oldString[point1]point1 -= 1point2 -= 1else:newStringList[point2] = '0'newStringList[point2-1] = '2'newStringList[point2-2] = '%'point1 -= 1point2 -= 3#把指针恰好相同时,之前的字符也补上if point1 > 0:for i in range(point1,-1,-1):newStringList[i] = oldString[i]#把字符串数组组合为字符串newString = ''for i in range(newStringLen):newString += str(newStringList[i])return newString

替换空格python实现相关推荐

  1. 剑指offer: 替换空格 python实现

    题目 题目描述 请实现一个函数,将一个字符串中的每个空格替换成"%20".例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy. 解题 ...

  2. python剑指offer替换空格_《剑指offer》2-替换空格【Java+Python】

    替换空格 1. 题目描述 请实现一个函数,将一个字符串中的空格替换成"%20". 2. 示例 例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%2 ...

  3. python中空格替换_Python替换空格

    如果直接每次遇到空格添加'%20',那么空格后面的数字就需要频繁向后移动.遇到这种移动问题,我们可以尝试先给出最终需要的长度,然后从后向前扫描,同时给定两个指针来保证定位.逆向思维''' 请实现一个函 ...

  4. c语言把下划线换成空格,python - 如何用下划线替换空格,反之亦然?

    python - 如何用下划线替换空格,反之亦然? 我想用字符串中的下划线替换空格来创建漂亮的URL. 例如: "This should be connected" becomes ...

  5. 替换空格(C++和Python 实现)

    (说明:本博客中的题目.题目详细说明及参考代码均摘自 "何海涛<剑指Offer:名企面试官精讲典型编程题>2012年") 题目 请实现一个函数,把字符串中的每个空格替换 ...

  6. 剑指offer:替换空格

    替换空格 请实现一个函数,把字符串 s 中的每个空格替换成"%20". 示例 1: 输入:s = "We are happy." 输出:"We%20a ...

  7. 剑指Offer(二):替换空格

    参考链接: https://cuijiahua.com/blog/2017/11/basis_2.html https://blog.csdn.net/wang454592297/article/de ...

  8. ~4.1 剑指 Offer 05. 替换空格

    剑指 Offer 05. 替换空格 题目描述 思路 源代码 题目描述 思路 C++: 在 C++ 语言中, string 被设计成「可变」的类型,因此可以在不新建字符串的情况下实现原地修改. 思路: ...

  9. python字符串去除空格,python去除字符串(string)空格的五种方法

    成年人的爱情不仅仅是简单的我爱你和漂亮的新衣服. python去掉字符串中的空格的方法总结 1.strip方法去掉字符串两边(开头和结尾)的空格 space_str = ' Remove the sp ...

  10. 剑指offer:面试题05. 替换空格

    题目:替换空格 请实现一个函数,把字符串 s 中的每个空格替换成"%20". 输入:s = "We are happy." 输出:"We%20are% ...

最新文章

  1. 卸载系统预装McAfee Agent
  2. java控制台next_java读取控制台输入以及next() ,nextLine(), nextInt() 和nextDouble()的比较...
  3. 京东程序员回应“被猝死”:我还活着,还在写代码
  4. linux 修改文件时间
  5. 第2天.make的学习(第二部分)对伪目标的理解
  6. hbase linux 命令,在linux下操作hbase
  7. 若依集成ip2region实现离线IP地址定位
  8. JPA getValidationMode()
  9. 使用C#开发ActiveX控件
  10. linux蜂鸣器控制实验,【Linux公开课】蜂鸣器使用、LCD背光控制、触摸屏校准、GPIO操作...
  11. Redis 缓存 + Spring 的集成示例(转)
  12. Squid缓存服务器方案
  13. 路灯灭了,路灯干扰者经过
  14. [Linux实用工具]Windows下同步Linux文件(Linux安装Samba和配置)
  15. js实现轮播图点击按钮切换下一张图片
  16. Android获取安装应用Apk包大小 缓存大小 getPackageSizeInfo StorageManager
  17. xposed框架_免root使用xposed框架的另一种方法!
  18. 201903股票投资与实践入门三:资金流向与K线入门
  19. vue项目中使用rem替换px-使用方法-02-问题规整
  20. windows切屏快捷键

热门文章

  1. Mysql 的 GROUP_CONCAT() 函数拼接串
  2. 基于jQuery动画二级下拉导航菜单
  3. 从0开始学习C#第二天
  4. Timus 1005. Stone pile
  5. [Html]Jekyll 代码高亮的几种选择
  6. php 是否支持json,php json 支持汉语
  7. python 分类树_python中列表的分类树实现
  8. 使用matlab的appdesigner制作分析固定简单电路的APP
  9. [2018.10.13 T2] 工作计划
  10. el-table的使用总结