python+selenium 字符串拼接问题

今天学习遇到一个小问题,定位一个菜单,使用写死的方法就能定位到,但是用字符串拼接的方法就定位不到

下面是写死方法
def menu():
    currentDr.find_element_by_css_selector('[alt="主菜单"]')).click()

  下面是错误的字符串拼接方法

   def mainMenu(self,menu):

          a = " '[alt= " 

          b = " ]' "

          currentDr.find_element_by_css_selector(a +'"'+menu+'"'+b)).click()

为什么把a 和 b 单独拉出来,是因为就这2个拼接报错了,'[alt="主菜单"]'  为什么最外面是用2个单引号,是为了表明  find_element_by_css_selector 括起来的是个字符串,使用拼接的方法拼接,说明拼接完成的语句,本身就是个字符串,那么a、b中的 [ ]外面就不应该再加单引号,应该是a = " [alt= "      b=" ]"  

  

上面的例子中find_element_by_css_selector 里面的 '"',为了看着方便,分开来看是‘ "  '  ,用两个单引号 把双引号给括起来,不过为什么说menu本身也是字符串类型,还要左右拼接上两个双引号,是因为这个字符串是包含在一个字符串里面的,如果不加的话与上面写死的那种格式就不一样了,大家自己意会吧,只能解释到这种程度

正确的合一起的拼接应该是:

currentDr.find_element_by_css_selector( ' [alt= '+'"'+menu+'"]' )).click()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值