Python 前瞻函数语法错误(Regex)

Python 前瞻函数语法错误(Regex),python,regex,python-3.x,syntax-error,syntax-highlighting,Python,Regex,Python 3.x,Syntax Error,Syntax Highlighting,嘿,伙计们,我看到一个“无效语法”弹出,它突出显示了我代码中的“?”。这个是前瞻函数的元字符,但我不知道为什么它不起作用。这是我的密码: import os import re def main (): file = open (os.path.expanduser('~/Desktop/Assignment 3/motifFinding.txt')) data = file.read().split() s = data[0] t = data[1]

嘿,伙计们,我看到一个“无效语法”弹出,它突出显示了我代码中的“?”。这个是前瞻函数的元字符,但我不知道为什么它不起作用。这是我的密码:

import os
import re

def main ():

    file = open (os.path.expanduser('~/Desktop/Assignment 3/motifFinding.txt'))
    data = file.read().split()

    s = data[0] 
    t = data[1]

    x = [m.start() for m in re.finditer(?=t,s)] 

    print (x)

main()
请帮忙

多谢各位


另外,我正在使用Mac

似乎您正试图以某种方式使用变量t进行前瞻(
'(?=…)'
)。前瞻组由在右括号后面有一个
?=
的括号组成

请记住,字符串需要用引号括起来,但变量需要在字符串之外


如果
t
表示一个您正试图向前看的正则表达式,则可以使用字符串连接将其放入向前看组(
“(?=THIS)”
)。示例:
“(?=”+t+)”

简单的印刷错误:您没有在正则表达式周围加引号。您好,我在“?=t”周围加了引号,但出现了错误,我没有在字符串s中查找小t。t是手册的一个子串:我确实看了,但我不明白你的意思。下面的人回答了我的问题!非常感谢你,我只想知道这些。我理解其中的逻辑,但我只是不理解在它周围加引号。这解释了这么多,我只是尝试了我的代码,它的工作!非常感谢你。