一种复杂的字符串串接



我必须将字符串格式化为特定的形式,但不幸的是,我所有的尝试都失败了。。

# What I want:
//*[@id="ember205"]
# What I am getting:
//*[@id=ember205]
# Additional details, where I need it and the way I am constructing it:
moveToStep = str("ember"+str(int(199)+int(step_number * 3)))
driver.find_element_by_xpath("//*[@id="+moveToStep+"]").click()

如有任何帮助,将不胜感激

您尝试过使用.format((吗?

driver.find_element_by_xpath("//*[@id="{0}"]".format(moveToStep)).click()

用+连接字符串通常不是最好的主意,python有几种方法可以格式化字符串。

moveToStep = 199 + step_number * 3
driver.find_element_by_xpath('//*[@id="ember{}"]'.format(moveToStep)).click()

或者在Python 3.6+上,您可以使用f-string

moveToStep = 199 + step_number * 3
driver.find_element_by_xpath(f'//*[@id="ember{moveToStep}"]').click()

最新更新