我正在处理一些文本数据,并将它们转换为可解释的命令,这些命令将用作WHERE语句的参数,但是我得到了一个字符串,但我不知道如何使用它。
例如来自字符串:
'c_programme_nom == "2-Broke-Girls"'
我明白了:
"F.col('name').like('%2-Broke-Girls%')"
但是我得到一个字符串,我想将其用作WHERE语句中的参数。
预期结果将是:
df.where(F.col('name').like('%2-Broke-Girls%'))
我不知道是否有办法。
答案 0 :(得分:1)
好像您要执行包含代码的字符串:
您可以在python中使用exec
:
exec()函数用于动态执行Python程序,该程序可以是字符串或目标代码。如果它是字符串,则将其解析为一组Python语句,然后执行该语句,除非发生语法错误;如果它是目标代码,则只需执行即可。
exec('print("The sum of 5 and 10 is", (5+10))')
# The sum of 5 and 10 is 15