文字列内の文字位置を置換しようとしていますが、これまでのところ成功していません。文字列内の文字位置を検索して置き換えます。
def replace(string, position):
p = int(position)
s = []
for i,c in enumerate(string):
s.append(c)
if c == '$':
s.insert(p,c)
return ''.join(s)
文字列内の文字位置を置換しようとしていますが、これまでのところ成功していません。文字列内の文字位置を検索して置き換えます。
def replace(string, position):
p = int(position)
s = []
for i,c in enumerate(string):
s.append(c)
if c == '$':
s.insert(p,c)
return ''.join(s)
あなたはまだあなたの新しい文字列の末尾に$
兆しを追加している:例えば、
string = 'LOLOLOLO$$'
replace(string,1)
結果のために私がしたい
'L$$OLOLOOL'
私の既存のコードです。私は右のあなたの質問を得た場合は、1位の「$$」を挿入し、古い発生を削除したい
...
if c == '$':
s.insert(p,c)
else:
s.append(c)
:これを試してみてください
def replace(src, newpos, what="$$"):
src=src.replace(what, "") #removes ALL occurences of what
return src[:newpos]+what+src[newpos:]
あなたに結果与えること:
をs="LOLOLO$$"
result=replace(s, 1)
print(result) #result is "L$$OLOLO"
「L $$ OLOLOLO $$」から「LLOOLLOOLLOOLLOO $$$$」になります。 – Reboot
@NathanDrakeはうまく動作します。最初の 's.append(c)'行を削除し、それを 'else'ブロックの中に移動してください。 – Selcuk
コードは本当に良く見えますが、問題はほとんどありません。結果私は 'L $$ OLOLOOL'が欲しいですが、私は 'L $$ OLOLOLO'を得ています – Reboot