将表达式赋给变量并执行它

rSt*_*rms 1 python

我想将以下表达式分配给变量:

textFormat = 'soup.find("div", {"class" : "article-entry text"}).text.replace(\'\n\', "")'
Run Code Online (Sandbox Code Playgroud)

我正在使用另一个文件调用此代码

text = exec(textFormat)
Run Code Online (Sandbox Code Playgroud)

可悲的是我收到错误消息:

   File "C:\Users\dadsad\documents\coding\dasdasd\functions.py", line 42, in loadAtom
    text = exec(textFormat)   File "<string>", line 1
    soup.find("div", {"class" : "article-entry text"}).text.replace('
                                                                    ^ SyntaxError: EOL while scanning string literal
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?谢谢!:)

编辑:尝试了建议,得到一个无: 在此输入图像描述

Rob*_*obᵩ 5

我怀疑你患有反疱疹.在以下之前你还需要一个斜杠n:

textFormat = 'soup.find("div", {"class" : "article-entry text"}).text.replace(\'\\n\', "")'
Run Code Online (Sandbox Code Playgroud)

但是,代替以exec这种方式编写代码,您可能希望公开子例程:

def textFormat(soup):
    return soup.find("div", {"class" : "article-entry text"}).text.replace('\n', "")
Run Code Online (Sandbox Code Playgroud)