[英]Replacing all instances of a character in a string using python
尝试用新字符替换字符串中给定字符的所有实例。 以下是我的代码:
def main():
s='IS GOING GO'
x='I'
y='a'
rep_chr(s,x,y)
def find_chr(s,char):
i=0
for ch in s:
if ch==char:
return (i)
break
i+=1
return -1
def rep_ch(s,x,y):
result=""
for char in s:
if char == x:
print(result=result+ y )
else:
return char
main()
编辑了代码,但仍将第一个“ I”替换为“ a”,而忽略了第二个“ I”。 有什么建议吗?
for i in range(s1):
此处s1
是一个字符串,您将其传递给range
函数,该函数只希望数字作为参数。 那就是问题所在。 您应该使用字符串的长度来代替
for i in range(len(s1)):
但是,您的实际问题可以通过str.replace
来解决,就像这样
s='IS GOING GO'
x='I'
y='a'
print(s.replace(x, y))
如果您想在没有str.replace
情况下进行求解,则可以这样做
s, result, x, y ='IS GOING GO', "", "I", "a"
for char in s:
if char == x:
result += y
else:
result += char
print(result)
输出量
aS GOaNG GO
同样的程序也可以这样写
s, result, x, y ='IS GOING GO', "", "I", "a"
for char in s:
result += y if char == x else char
print(result)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.