问 题

在python中,字符串是没有contains函数的,不过可以使用find来代替。现在有一串单词,有的相邻两个单词之间可能不止一个空格,现在我只想保留一个空格,使用下面的办法就是无效的,不知道为什么这样会出现死循环。我知道可以使用' '.join(a.split())来解决问题,但是下面的代码不知道为什么会出错,是我的思想错误,还是其他原因?在java等其他语言里面,使用这种思想可行么?

def StringUnderLine(str):

str.strip();

n=0;

while str.find(' '):

str.replace(' ',' ')

n=n+1

print(n,end='')

print(str,end='')

a="1 2 3 4 5 "

b="1 "

c=" 2"

d="abc def"

StringUnderLine(a)

StringUnderLine(b)

StringUnderLine(c)

StringUnderLine(d)

解决方案

str.find(' ')如果没有找到返回-1 而循环while为True无限循环, 所以while -1会无限循环下去

还有要使str.replace(' ', ' ')有效,

应该

a = '1 3 5'

while a.find(' ') != -1:

a = a.replace(' ', ' ')

如果只是a.replace(' ', ' '),那么循环执行的永远只是a = '1 3 5', 也就是初始字符串,

扫一扫关注IT屋

微信公众号搜索 “ IT屋 ” ,选择关注与百万开发者在一起

python语言只能用4个空格_python - 单词之间只保留一个空格,用replace为什么会出错...相关推荐

  1. python语言只能以程序方式执行_Python语言程序设计

    零基础学编程,用python入门是个不错的选择,虽然国内基本上还是以c语言作为入门开发语言,但在国外,已经有比较多的学校使用python作为入门编程语言.面向对象程序设计.连接数据源等基本知识,然后结 ...

  2. Python程序——有一段英文文本,其中有单词连续重复了2次,编写程序检查重复的单词并只保留一个。

    **题目:**假设有一段英文文本,其中有重复的单词,要求去除重复单词,只保留一个,例如"This is is a desk.",程序输出为"This is a desk. ...

  3. C语言编程>第十周 ⑦ 请编写函数fun,该函数的功能是:统计一行字符串中单词的个数,作为函数值返回。一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间由若干个空格隔开,一行……

    例题:请编写函数fun,该函数的功能是:统计一行字符串中单词的个数,作为函数值返回.一行字符串在主函数中输入,规定所有单词由小写字母组成,单词之间由若干个空格隔开,一行的开始和结尾都没有空格. 请勿改 ...

  4. 利用Python语言编程,完成猜数游戏,系统随机产生一个1到100的数字num1,用户输入一个数字guess,如果没有猜对,根据系统给出的提示重新猜数,直到才对为止。

    利用Python语言编程,完成猜数游戏,系统随机产生一个1到100的数字num1,用户输入一个数字guess,如果没有猜对,根据系统给出的提示重新猜数,直到才对为止. 要求:(1)系统每次都要给出新的 ...

  5. 题目65:一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格。

    题目转载:http://python.wzms.com/s/1/65 题目描述: 一个句子中也许有多个连续空格,过滤掉多余的空格,只留下一个空格. 输入格式: 一行,一个字符串(长度不超过200),句 ...

  6. 【美团校招笔试题】去除字符串首尾空格,中间多个空格只保留一个

    要求: 这是本人参加美团校招在线考试笔试题,如果此行为违反了美团校招笔试题商业保密性,请与本人联系. 思路:用一个while循环扫描整个字符串,用pStart字符指针指向整个字符串首地址,如果遇到首部 ...

  7. 7-33 删除句子中的单词 (8 分)输入n(n<=10)个由若干个单词组成的英文句子(句子的长度不超过100),每个句子以英文的标点“.”结束,每个句子中单词之间由1个空格进行分隔,如果最后一个单

    7-33 删除句子中的单词 (8 分) 输入n(n<=10)个由若干个单词组成的英文句子(句子的长度不超过100),每个句子以英文的标点"."结束,每个句子中单词之间由1个空 ...

  8. 给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格。

    给定一个句子(只包含字母和空格), 将句子中的单词位置反转,单词用空格分割, 单词之间只有一个空格,前后没有空格. 比如: (1) "hello xiao mi"-> &qu ...

  9. python数组重复数据去重_JS实现数组去重(重复的元素只保留一个)

    1.遍历数组法 它是最简单的数组去重方法(indexOf方法) 实现思路:新建一个数组,遍历去要重的数组,当值不在新数组的时候(indexOf为-1)就加入该新数组中: var arr=[,,,,,, ...

  10. 统计单词的数量 描述 输入一个英文句子,以回车符结束,单词间以空格分隔,标点符号后跟至少一个空格,统计并输出单词的个数(仅统计单词,数字按单词计,不计算标点符号,重复单词出现几次就统计几次)。‪‬‪‬

    统计单词的数量 描述 输入一个英文句子,以回车符结束,单词间以空格分隔,标点符号后跟至少一个空格,统计并输出单词的个数(仅统计单词,数字按单词计,不计算标点符号,重复单词出现几次就统计几次).‪‬‪‬ ...

最新文章

  1. iOS通过CAShapeLayer和UIBezierPath画环形进度条
  2. ssr无法在win10使用_Nuxt SSR中使用WangEditor爬坑—把对象暴打出原型
  3. 浅谈腾讯微博与新浪微博的优劣
  4. 【转贴】gdb中的信号(signal)相关调试技巧
  5. Linux下黑白棋c语言程序,黑白棋c语言程序.doc
  6. struts2 表单 get 乱码问题/apache+tomcat+jk 乱码问题
  7. 个人使用整理的部分测试数据整理-输入类2022
  8. 互联网日报 | 3月27日 星期六 | 知乎正式登陆纽交所;美团2020年营收首破千亿元;小米将推出新款自研芯片...
  9. Hive-内置函数:根据身份证规则从身份证号提取年龄和性别
  10. 更改csv默认分隔符
  11. 浏览器表单自动填充问题【兼容性解决方案】
  12. 使用adb命令操控Android手机
  13. nginx-quic
  14. uTools插件-Excalidraw轻量的在线白板绘图工具
  15. 高速公路收费运营安全风险管控与突发事件应急处置 PPT
  16. RocketMQ学习笔记(持续更新)
  17. 目前主要的计算机汉字输入方法是什么,计算机汉字输入方法专利_专利申请于2001-03-28_专利查询 - 天眼查...
  18. ArcGIS创建地图包:快速分享多个图层
  19. pajek study
  20. [机器学习入门]——第七课——非监督聚类

热门文章

  1. Windows 7 通过无线网卡,模拟Wifi,实现手机,电脑等无线设备共享上网
  2. C#保存PictureBox或Bitmap图片为bmp|png|gif|jpg格式
  3. vs2008打开aspx文件时设计界面死机情况的解决
  4. 一种简单有效的3D模型的动画多线程方案
  5. 25.go doc 与 godoc
  6. 1.卷1(套接字联网API)---简介
  7. 155.PHP中“==”运算符的安全问题
  8. 23. Yii 组件事件
  9. 循序渐进之Spring AOP(3) - 配置代理
  10. java.lang.IllegalStateException: No output folder