Python 3.x 无法在python中的exec命令中执行if语句
输出 “1-获得了真实的表达式值”Python 3.x 无法在python中的exec命令中执行if语句,python-3.x,exec,Python 3.x,Exec,输出 “1-获得了真实的表达式值” 一百 因此,上面的代码我想在exec命令中运行,我无法在python中的exec命令中执行,一行代码我可以运行,但是if语句如上所述,我无法执行。当字符串有多行时,需要使用如下三重引号: var1 = 100 isTrue=[] isFalse=[] run_cmd = f'if var1: print "1 - Got a true expression value" print var1
一百
因此,上面的代码我想在
exec
命令中运行,我无法在python中的exec命令中执行,一行代码我可以运行,但是if语句
如上所述,我无法执行。当字符串有多行时,需要使用如下三重引号:
var1 = 100
isTrue=[]
isFalse=[]
run_cmd = f'if var1:
print "1 - Got a true expression value"
print var1
isTrue.append(var1)
else:
print "1 - Got a false expression value"
print var1
isFalse.append(var1)'
exec(run_cmd)
或单引号或三引号:
variable = """
x = 10
print(x)
"""
此外,Python2中不支持f字符串,您的代码可以在没有它的情况下处理
代码如下:
variable = '''
x = 10
print(x)
'''
var1 = 100
isTrue=[]
isFalse=[]
run_cmd = '''
if var1:
print "1 - Got a true expression value"
print var1
isTrue.append(var1)
else:
print "1 - Got a false expression value"
print var1
isFalse.append(var1)
'''
exec(run_cmd)