我想了解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