python:从字符串类型变量中删除双引号

时间:2016-01-29 12:04:55

标签: python string pandas

我有一个字符串列表

 q = ["(df['city'] == 'Mumbai') & (df['pin'] == 12345)","(df['city'] == 'Delhi') & (df['pin'] == 12346)"]   #len(q) = 2

现在我必须在我的pandas数据帧上查询这两个条件

 d = df.query(q[0])   
 Error: df unknown

检查后我知道它是针对该字符串类型的

 d = df.query(q[0])

就像

一样
d = df.query("(df['city'] == 'Mumbai') & (df['pin'] == 12345)")  ###string with " "
###which will not work as per syntax
####if it will be like below it should have worked
d = df.query((df['city'] == 'Mumbai') & (df['pin'] == 12345))   ###without " "

我尝试过替换('''''),eval(str)但没有成功。

现在我相信因为它是一个字符串dtype所以""是内置的,当你在任何地方发送字符串变量时肯定会出现。

无论如何,我可以将该字符串传递给没有引号的df.query()(我不知道是否可以通过更改该字符串变量的某些dtype来完成,或者无法完成)。

请建议。

0 个答案:

没有答案