如何使用python单独替换字符串中的第一个字符?
如何使用python单独替换字符串中的第一个字符?如何使用python单独替换字符串中的第一个字符?,python,python-3.x,replace,Python,Python 3.x,Replace,如何使用python单独替换字符串中的第一个字符? string = "11234" translation_table = str.maketrans({'1': 'I'}) output= (string.translate(translation_table)) print(output) 预期输出: I1234 11234 实际输出: I1234 11234 我不确定您想要实现什么,但您似乎只想将'1'替换为'I'一次,所以请尝试以下方法: string = "11234" s
string = "11234"
translation_table = str.maketrans({'1': 'I'})
output= (string.translate(translation_table))
print(output)
预期输出:
I1234
11234
实际输出:
I1234
11234
我不确定您想要实现什么,但您似乎只想将
'1'
替换为'I'
一次,所以请尝试以下方法:
string = "11234"
string.replace('1', 'I', 1)
str.replace
采用3个参数old
、new
和count
(可选)count
表示要用new
子字符串替换old
子字符串的次数。在Python中,字符串是不可变的,这意味着不能指定索引或修改特定索引处的字符。改用。这是函数头
str.replace(old, new[, count])
此内置函数返回一个字符串副本,其中所有出现的子字符串old都替换为new。如果给定了可选参数计数,则仅替换第一次出现的计数
如果不想使用str.replace()
,可以利用拼接功能手动执行
def manual_replace(s, char, index):
return s[:index] + char + s[index +1:]
string = '11234'
print(manual_replace(string, 'I', 0))
输出
I1234
您可以使用
re
(regex),并使用那里的sub
函数,第一个参数是您要替换的对象,第二个是您要替换的对象,第三个是字符串,第四个是计数,所以我说1
,因为您只需要第一个:
>>> import re
>>> string = "11234"
>>> re.sub('1', 'I', string, 1)
'I1234'
>>>
实际上只是:
re.sub('1', 'I', string, 1)
你就不能像
'I'+string[1://code>那样做吗?注意:你的“Got Output”应该是II234
,而不是11234
,除非你说translate
什么都没做。我复制并粘贴了代码,得到了预期的iii234
。。。。