我正在尝试将 lxml 方法合并到我正在构建的另一个函数中。
lxml 将包含在双引号中的字符串作为输入。在该字符串中有另一个用单引号括起来的术语。像这样:
root.findall(".//*[@name='File Name']")
但是,我想从函数的参数中传递单引号 ('File Name'
) 内的值。
像这样:
def foo(bar):
root.findall(".//*[@name="+bar+"]")
但是,我只能通过输入带有双引号和单引号的 bar
arg 来让它工作,就像这样:"'bar'"
。
我如何配置它以便只需要编写 'bar'
?
我试过 +"\""+bar+"\""+
但没用。
编辑:我找到了一种方法:
def foo(bar):
atr = '"'+atr+'"'
root.findall(".//*[@name="+bar+"]")
有没有更优雅的解决方案?
最佳答案
有点不清楚你在问什么。我认为这就是您想要的:
def foo(bar):
root.findall(".//*[@name='{}']".format(bar))
这意味着如果你调用 foo("XYZ")
,它会调用 root.findall(".//*[@name='XYZ']")
.
关于python - 如何在 Python 中连接单个引号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31191387/