FAQ > 金融建模 > 第三方交互 > Python

Q:天软用do python|matlab|r方式执行第三方脚本    

  • A:语法:do extlanguage [paramlist] <scriptstring> [by config]
    说明:
    1、对外部语言的调用,in表示只送入,out表示只送出,var表示送入送出。
    2、如果使用变量名,天软会默认将同名变量名送入到外部语言中。假如目标语言大小写相关,则必须用name关键字明确指定变量名。
    3、对于不同的语言而言,可能有的语言存在返回值,有的语言是无返回值的。例如PYTHON没有返回值,而r有返回值。
    4、如果只执行代码,参数等都可以省略。
    5、对于某些语言,可能会存在其他配置的,可以通过by语法来送入。
    6、目前extlanguage已经支持python,r,matlab,今后可能更多的语言会被扩展支持,底层用户也可以通过接口规范来扩展支持其他语言。
    7、配合新的%%无转义字符串语法,对于调用其他语言会更方便。
    注:与第三方交互都需要本地执行
    范例1:do python执行范例,本地执行以下语句
    a:=2;
    Do python var a
    %%
    a=a*a;
    %%;
    Return a;
    //返回:4

    范例2:name重命名用法
      a:=3;
    c:=2;
    do python in a name "A",out b,var c name "D"
    %%
    D=A*D
    b=D*D
    %%;
    return array(c,b);
    //返回:array(6,36)