【问题标题】:A python problem: is there any way to return a new string that ask for remove a certain part?一个python问题:有没有办法返回一个要求删除某个部分的新字符串?
【发布时间】:2020-12-15 20:31:48
【问题描述】:

给定一个字符串,如果字符串“app”从索引 1 开始出现,则返回一个字符串,其中该“app”已被删除。否则,原样返回字符串。

oApp('hello') → 'hello'
oApp('aapppotato') → 'apotato'
oApp('appmello') → 'appmello'

below is what I have until now...

    def oApp(string):
        for i in range(len(string)):
            if string[1] == "app":
                return string[0] + [3:]
            else:
                return string

【问题讨论】:

  • 您能向我们展示您到现在为止的工作吗?请考虑看minimal reproducible example
  • 您是指从零开始的索引 1 吗?只是要求确定
  • 从索引 1 开始,但不包括

标签: python list indexing


【解决方案1】:

这是解决方案:

oApp = lambda x: x[0]+x[4:] if x[1:].startswith('app') else x

assert oApp('hello') == 'hello'
assert oApp('aapppotato') == 'apotato'
assert oApp('appmello') == 'appmello'

这些断言不会引发一些错误,因此它按预期工作。

【讨论】:

  • 嗨,(对不起...我不明白你的代码)我刚刚添加了一些东西..你能帮我看看吗?谢谢
  • @Kuanlin Lai 嗨,欢迎来到 SO!我更新了我的答案。如果不清楚,请查看 lambdas 以了解有关该主题的更多信息。它们是一个非常强大的功能。如果它解决了您的问题,请记住接受这个答案(它旁边的勾号)。
猜你喜欢
  • 2022-08-11
  • 1970-01-01
  • 1970-01-01
  • 2020-11-23
  • 1970-01-01
  • 2021-09-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多