我知道如何使用拼接来删除字母的首次出现,但是我正在尝试不使用拼接,.find()、. count()等任何字符串函数来实现这一点。我似乎无法弄清楚如何完成而不进行拼接。

这是我目前可以正常工作的拼接的内容:

s1 = ''
s2 = len(remWord)
for i in range(s2):
    if (remWord[i] == remLetter):
        s1 = remWord[0:i] + remWord[i + 1:s2]
return s1

任何帮助将是巨大的。

最佳答案

我假设如果字符串中不包含字母,则不会删除任何内容,因此可以使用以下代码:

严格不使用拼接

new_string = ''
found = False

for i in range(len(remWord)):
    if remWord[i] != remLetter or found:
        new_string += remWord[i]
    else:
        found = True

如果允许使用拼接
new_string = ''

for i in range(len(remWord)):
    if remWord[i] != remLetter:
        new_string += remWord[i]
    else:
        break

new_string += remWord[i + 1:]

10-04 22:27