如何交换字符串中的值而不循环

时间:2018-02-28 18:00:22

标签: python replace

string = input('Please enter a string: ')
replaced_string = string.replace(string[0],'e')
replaced_string[0] = string[0]
print(replaced_string)

我试图替换字符串中第一个字符的所有字母,但保留第一个字符,但显然我的代码在第三行不起作用。你能建议一个如何更换它的解决方案吗?

2 个答案:

答案 0 :(得分:4)

你可以这样做:

input_str = input()    
first_letter = input_str[0]
rest_of_letters = input_str[1:]
# Take the first letter, and append it the rest of the letters, but
# with "e" replaced by the first letter.
replaced_string = first_letter + rest_of_letters.replace(first_letter, 'e')

您尝试这样做的关键问题是字符串是不可变的。你做不到my_str[0] = "a"。如果要修改字符串,则必须使用所需的修改创建新字符串。

答案 1 :(得分:0)

我没有得到你想做的事。但是字符串不支持项目分配。