我想了解replace
方法。我有一串数字,我想进行一些调整。具体地讲,我会归类基于阈值的数字:如何正确循环并替换字符串中的元素?
def makeAdjustment(x):
for each in x:
if int(each) < 5:
x = x.replace(each, "0")
else:
x = x.replace(each, "1")
return x
在使用中:
>>> makeAdjustment("800857237867") == "100111001111"
True
>>> makeAdjustment("15889923") == "01111100"
True
>>> makeAdjustment("14963896") == "00110111"
True
然而,如果数字序列变得更大的字符串被转换成零:
>>> makeAdjustment("366058562030849490134388085")
'000000000000000000000000000'
想一想 - 在将所有数字替换为5以上的所有数字之后,**所有数字都低于5 **。 – jonrsharpe
'replace'方法返回字符串的一个副本,其中所有出现的旧字符串都被new替换。所以,最终一切都变成零。 – Charul
每个数字都是对的?替换替换所有的数字,而不仅仅是该位置的数字。你想要它的位置? – jwillis0720