Python 将字符串中单个数字的值更改为零

Python 将字符串中单个数字的值更改为零,python,syntax,syntax-error,Python,Syntax,Syntax Error,用户输入一串数字后,Python代码将用0替换5,但我无法克服语法错误。我试图阅读,但无法确定问题所在。多谢各位 string = input('Enter a string of digits: ') length_of_string = len(string) counter = 0 while (counter <= length_of_string): { if string[counter] == '5': string[counter

用户输入一串数字后,Python代码将用0替换5,但我无法克服语法错误。我试图阅读,但无法确定问题所在。多谢各位

string = input('Enter a string of digits: ')
length_of_string = len(string)
counter = 0
while (counter <= length_of_string):
    {
       if string[counter] == '5':
           string[counter] = '0'
           counter = counter + 1
       else:
           counter = counter + 1
           continue
    }
string=input('输入一串数字:')
字符串的长度=长度(字符串)
计数器=0

而(counter您只想用“5”替换那些“0”? 这就是你要找的吗

string = input('Enter a string of digits: ')
replaced_string = string.replace('5', '0')
print(replaced_string)
下面是另一个使用for循环和if语句的解决方案:

string = input('Enter a string of digits: ')
replaced_string = ""
for char in string:
    if char == "5":
        replaced_string += "0"
    else:
        replaced_string += char
print(replaced_string)

Python不使用方括号(
{}
)作为代码块。只需将其缩进4个空格。
>>来自{uuuu future}导入方括号语法错误:不可能
在Python中,字符串是不可变的。不能覆盖不可变对象的值。
string[counter]='0'
将引发
TypeError:'str'对象不支持项目分配
。请改用
replace()
。谢谢您,MisterNox,这非常有帮助。