如何防止字符串中的变量更改python

如何防止字符串中的变量更改python,python,python-3.x,string,replace,Python,Python 3.x,String,Replace,我是python新手,我的任务是编写一个程序,从用户那里输入一个字符串,然后打印该字符串,其中第一个字符的所有实例都已替换为“e”,第一个字符本身除外。 到目前为止,我得到的是: sent = input('Please enter a string: ') var1 = sent[0] var2 = 'e' mod_sent = sent.replace(var1,var2) print(mod_sent) 我知道没有什么可以阻止第一个角色的改变,但我觉得我已经尝试了所有的方法,只是因为它不

我是python新手,我的任务是编写一个程序,从用户那里输入一个字符串,然后打印该字符串,其中第一个字符的所有实例都已替换为“e”,第一个字符本身除外。 到目前为止,我得到的是:

sent = input('Please enter a string: ')
var1 = sent[0]
var2 = 'e'
mod_sent = sent.replace(var1,var2)
print(mod_sent)
我知道没有什么可以阻止第一个角色的改变,但我觉得我已经尝试了所有的方法,只是因为它不起作用而不得不删除。
如果可能的话,希望得到解释和回答。

实际上,发送的
中的第一个字符正在更改。请替换您调用的
,因为python将字符串中的每个字符替换为替换字符

您可以只还原第一个字符,这应该很容易,因为您将其存储在
var1
中(下次尝试使用更具描述性的名称)


在您的print语句之前添加这个,它应该可以工作。

实际上,发送的
中的第一个字符正在更改。请替换您调用的
,因为python会用替换字符替换字符串中的每个字符

您可以只还原第一个字符,这应该很容易,因为您将其存储在
var1
中(下次尝试使用更具描述性的名称)


在您的print语句之前添加这个,它应该可以工作。

您可以对字符串进行切片
str[1:][/code>将返回除第一个字符以外的整个字符串:

sent = input('Please enter a string: ')
var1 = sent[0]
var2 = 'e'
mod_sent = var1 + sent[1:].replace(var1,var2)
print(mod_sent)

您可以对字符串进行切片
str[1:][/code>将返回除第一个字符以外的整个字符串:

sent = input('Please enter a string: ')
var1 = sent[0]
var2 = 'e'
mod_sent = var1 + sent[1:].replace(var1,var2)
print(mod_sent)