鱼C论坛

 找回密码
 立即注册
查看: 2854|回复: 8

[已解决]空格替换

[复制链接]
发表于 2022-11-21 09:10:29 From FishC Mobile | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 wp231957 于 2022-11-21 09:11 编辑

要求,使用python
要求,不要使用正则模块
要求,一个字符串中含有不定空格,要把这些不规则空格统一替换成一个空格
比如a       b          c          d       e        f
输出a b c d e f
最佳答案
2022-11-21 09:41:20
wp231957 发表于 2022-11-21 09:39
语句我当然知道,但是它是如何实现那个神奇的效果呢,你是咋判断每一段里有多少空格


由于最多只有 len(x) 个空格(就是整个字符串都是空格),所以只要把长度是 len(x)~1 的空格都给换成 ' ' 就可以了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-11-21 09:16:39 | 显示全部楼层
本帖最后由 tommyyu 于 2022-11-21 09:27 编辑
x = input()
for i in range(len(x), 0, -1): x = x.replace(i * ' ', ' ')
print(x)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-11-21 09:35:37 From FishC Mobile | 显示全部楼层
tommyyu 发表于 2022-11-21 09:16

吃怀疑的态度运行了你的代码
不可思议的是居然符合要求
那个i乘以空格  是神马鬼,没看懂
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-21 09:36:43 | 显示全部楼层
wp231957 发表于 2022-11-21 09:35
吃怀疑的态度运行了你的代码
不可思议的是居然符合要求
那个i乘以空格  是神马鬼,没看懂

把 i个空格 替换成 1个空格
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-11-21 09:39:35 From FishC Mobile | 显示全部楼层
tommyyu 发表于 2022-11-21 09:36
把 i个空格 替换成 1个空格

语句我当然知道,但是它是如何实现那个神奇的效果呢,你是咋判断每一段里有多少空格
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-21 09:41:20 | 显示全部楼层    本楼为最佳答案   
wp231957 发表于 2022-11-21 09:39
语句我当然知道,但是它是如何实现那个神奇的效果呢,你是咋判断每一段里有多少空格


由于最多只有 len(x) 个空格(就是整个字符串都是空格),所以只要把长度是 len(x)~1 的空格都给换成 ' ' 就可以了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-11-21 09:43:14 From FishC Mobile | 显示全部楼层
tommyyu 发表于 2022-11-21 09:16

原理懂了,貌似效率不是太高
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-11-21 09:47:02 | 显示全部楼层
wp231957 发表于 2022-11-21 09:43
原理懂了,貌似效率不是太高

O(n)的代码:
x, ans = input(), ''
for i in range(len(x)):
    if x[i] != ' ':
        ans += x[i]
    elif i == len(x)-1 or x[i+1] != ' ':
        ans += x[i]
print(ans)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-11-21 09:50:49 From FishC Mobile | 显示全部楼层
tommyyu 发表于 2022-11-21 09:47
O(n)的代码:

嗯看起来还是正则霸道
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-12 20:31

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表