python 测试传参win,Linux 区别
2018-12-04 15:45:00
han
  • 访问次数: 7
  • 注册日期: 2018-11-29
  • 最后登录: 2018-12-11
  • 我的积分: 10

不算bug,是个问题。刚开始使用 python ,也可能是经验不足,勿见笑。

同一段程序,在window上 入参和在 Linux上入参,程序里获取的值,双引号的处理不同。

windows ,双引号没了。


用mac 测试,入参中,双引号还在

沙发
2019-06-10 10:23:30
Seagull
  • 访问次数: 31
  • 注册日期: 2018-03-16
  • 最后登录: 2020-05-29
  • 我的积分: 72
板凳
2019-11-28 15:58:40
晨晨
  • 访问次数: 3
  • 注册日期: 2019-11-13
  • 最后登录: 2019-11-28
  • 我的积分: 13
那你在 window上你怎么办呢,这边“”没了,导致取值时候有影响
#3
2020-04-07 17:09:47
Eric
  • 访问次数: 2
  • 注册日期: 2020-04-07
  • 最后登录: 2020-04-07
  • 我的积分: 12
在LuckyFrameClient的InvokeMethod.java中加一下转义,判断如果是windows平台,就把双引号转义一下就OK了。

LogUtil.APP.info("调用Python脚本路径:{}",args[1]);
for(int i=0;i < params;i++){
if(System.getProperty("os.name").toLowerCase().contains("windows")){
LogUtil.APP.info("当前参数为:{}",getParameterValues[i].toString());
args[2+i]=StringEscapeUtils.escapeJavaScript(getParameterValues[i].toString());
LogUtil.APP.info("转义后参数为:{}",args[2+i]);
}else {
args[2 + i] = getParameterValues[i].toString();
}
}
1/1