我正在尝试将字符串中除最后四个字符以外的所有字符更改为输出中的 # 符号。
这是我目前拥有的
>>> v
'0123456789'
>>> for ch in v:
... if ch in v:
... v = v.replace(ch, '#')
...
>>> print v
##########
如您所见,所有字符都被替换了。
我尝试过使用所有类型的索引切片方法,但似乎没有任何效果!我也试过...
>>> v = '0123456789'
>>> for ch in v:
... if ch in v:
... v = v[0:-4].replace(ch, '#') + v[-3:]
...
>>> print v
789
但是,正如您在这里看到的,它摆脱了所有其他字符。
请帮忙。
最佳答案
Python 字符串是不可变的,所以像这样的东西应该可以工作。没有循环
>>> v = '0123456789'
>>> '#'*(len(v) - 4)+v[-4:]
'######6789'
关于替换的事情是,如果你有 333333
并且你 replace('3', '#')
会怎么样?一切都变成了 #
,对吧?
关于python - 如何使用 .replace() 函数将字符串的最后 4 个字符以外的所有字符更改为 # 符号?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40842451/