Python 字符串切片:检查字符串能否通过递归删除变为空


在本教程中,我们将编写一个程序来检查给定的字符串能否通过使用切片递归删除字符而变为空。让我们看一个例子来更清楚地理解它。

输入

string = "tutorialstutorialspointpoint"
sub_string = "tutorialspoint"

输出

True
  • 第一次迭代后,**tutorialstutorialspointpoint** 变为 **tutorialspoint**。
  • 第二次迭代后,字符串将为空。

我们可以使用字符串的 **find()** 方法实现此结果。请按照以下步骤编写程序。

  • 初始化 **字符串** 和 **子字符串**。
  • 如果两者中任何一个为空,则返回 **False**
  • 当 **字符串** 长度大于零时,执行以下操作。
    • 检查 **子字符串** 是否存在于 **字符串** 中。
    • 如果不存在,则返回 **False**
  • 返回 **True**,因为循环没有在中间终止。

示例

 在线演示

def is_valid(string, sub_string):
   # checking the lengths of string and sub_string
   if len(string) > 0 and len(sub_string):
      # iterating until string becomes empty
      while len(string) > 0:
         # finding the sub_string in string
         index = string.find(sub_string)
      # checking whether its present or not
      if index == -1:
         # returning false
   return False
   # removind the sub_string
   string = string[0: index] + string[index + len(sub_string):]
   # returning True
   return True
   else:
      # returning False
   return False
   if __name__ == '__main__':
      # initializing the string and string
      string = 'tutorialstutorialspointpoint'
      sub_string = 'tutorialspoint'
# invoking the method
print(is_valid(string, sub_string))

输出

如果您运行以上代码,则将获得以下结果。

True

结论

如果您在本教程中有任何疑问,请在评论区提出。

更新于:2020年7月11日

295 次浏览

开启您的 职业生涯

完成课程获得认证

开始学习
广告
© . All rights reserved.