为了账号安全,请及时绑定邮箱和手机立即绑定

将一个字符串插入另一个字符串时出错

将一个字符串插入另一个字符串时出错

ABOUTYOU 2023-05-09 10:48:18
我有一个字符串s= 'aaeekmnnry'和另一个字符串p = 'aka'。我想在 s 的第二个索引处插入 p,这样我的输出就是ans = 'aaakaeekmnrry'. 为此,我编写了以下代码:f = p[0]i = 0while i < len(s):    if p[0] <= s[i]:        i+=1    else:        break    ans = ''.join(s[:i]) + ''.join(p) + ''.join(s[i:])但是我的索引i变成了字符串的长度并且输出是'aaeekmnnryaka',我期望i变成 2。我做错了什么?
查看完整描述

2 回答

?
米琪卡哇伊

TA贡献1998条经验 获得超6个赞

你弄错了你的条件。s当你看到字母 in 的字典顺序更高时,你应该突破。


i = 0

while i < len(s):

    if p[0] < s[i]:

        break

    else:

        i += 1


ans = s[:i] + p + s[i:]

# aaakaeekmnnry


查看完整回答
反对 回复 2023-05-09
?
SMILET

TA贡献1796条经验 获得超4个赞

你离正确答案还差一个字符!你<=想要的是- 当你的字符串>=的第一个字符大于(或等于)你当前正在检查的位置的字符时,你不断增加位置。除此之外,您的代码是正确的。ps



查看完整回答
反对 回复 2023-05-09
  • 2 回答
  • 0 关注
  • 130 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信