Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/319.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Can';不要打印匹配的图案_Python_Algorithm_String Matching - Fatal编程技术网

Python Can';不要打印匹配的图案

Python Can';不要打印匹配的图案,python,algorithm,string-matching,Python,Algorithm,String Matching,当我运行这段代码时,我没有得到任何错误,但我无法在下面的屏幕上打印我的代码 我试图改变环境,但没有成功。我的错误在哪里?如何纠正 def字符串匹配(文本、模式): 对于范围内的i(len(文本)-len(模式)): j=0 而j-1,则它是一个子字符串。如果只需要返回0/-1,也可以创建一个函数,如下所示: string = "Chapter I. The quick brown fox jumped over the lazy dog." substr = "over the" substr2

当我运行这段代码时,我没有得到任何错误,但我无法在下面的屏幕上打印我的代码

我试图改变环境,但没有成功。我的错误在哪里?如何纠正

def字符串匹配(文本、模式):
对于范围内的i(len(文本)-len(模式)):
j=0
而j
假设您正在查找子字符串,您可以使用如下所示的find()方法:

print(string.find(substr))
如果结果为>-1,则它是一个子字符串。如果只需要返回0/-1,也可以创建一个函数,如下所示:

string = "Chapter I. The quick brown fox jumped over the lazy dog."
substr = "over the"
substr2 = "lazy hat"

def checkSubstring(string, substring):
    if string.find(substring) > -1:
        print("Within the Text")
        return 0
    else:
        print("Not within the Text")
        return -1

checkSubstring(string, substr)
checkSubstring(string, substr2)

它分别返回0和-1

如果满足
j==len(模式)
,则函数可能返回的值为-1,或者
None
。您可能想返回一些东西以便打印出来。您还需要修复上面代码中的缩进,因为它显然不正确。哦,非常感谢您,代码运行正确,如果我们尝试只在一个函数中运行它呢?我们不能在没有第二个函数的情况下对第一部分进行一些编辑吗?你的确切意思是什么?如果您的意思是我们可以只使用string.find()方法,那么您只需要使用小于0表示第二个字符串不是子字符串的逻辑。我的意思是,如果没有checkSubstring函数,我们可以将这些操作包含到stringMatching函数中吗?顺便说一句,你的代码很好,我很欣赏你的优秀编程。我想我还是有点不明白你的意思。你能更明确地解释一下吗?当然,我的意思是,如果不创建一个新函数来打印输出中发生的事情,我们能在我上面写的stringMatching函数中添加一些代码,而不添加一个新函数,比如你上面写的checkSubstring吗?我试图创建一个有输出的函数(不是无)。