前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >perl和python的相互调用

perl和python的相互调用

作者头像
py3study
发布2020-01-08 10:58:27
发布2020-01-08 10:58:27
1.8K00
代码可运行
举报
文章被收录于专栏:python3python3
运行总次数:0
代码可运行

从实用角度出发,并未付诸于解释(有时间后期补充)。程序内容直接复制到文件,即可使用。

注意perl调用python路径在相同目录下;

python调用perl则不需要

系统环境:windows7

python版本:2.x

perl版本:This is perl 5, version 24, subversion 2 (v5.24.2) built for MSWin32-x86-multi-thread-64int

编辑器:notepad++

notepad++配置python和perl运行环境方法:

http://blog.csdn.net/sunyan3517/article/details/74857499

代码语言:javascript
代码运行次数:0
复制
perl调用python
 use File::Spec;

 *******perl代码*****perl_test.pl*********
 sub PerlCallPython
 {
     my $path_curf = File::Spec->rel2abs(__FILE__);
     print "C PATH = ",$path_curf,"\n";
     my ($vol, $dirs, $file) = File::Spec->splitpath($path_curf);
     print "C Dir = ", $dirs,"\n";
     my $count = 1;#可以是任意字符串
     chdir $dirs;#saveComment_temp.py 程序所在位置
     system("python python_t.py -n $count");
 }
 chdir $dirs;#saveComment_temp.py 程序所在位置

 PerlCallPython();
 
 
 ******python文件内需要的程序***python_t.py*******
 #coding:utf-8
 import argparse
 parser = argparse.ArgumentParser()  #建立parser
 parser.add_argument('-n')  #接受n存入
 args = parser.parse_args()  #得到所有参数
 #获得的内容: Namespace(n='1')
 #注意不是字符串 而是一个类,所以需要str()转换
 path_temp = args;
 print args;

 ========================================================================
 ========================================================================
 ========================================================================
 python 调用 perl
 python代码
     #coding:utf-8
     import subprocess
     arg1 = "10";
     arg2 = "20";
     #无参数调用方法
     #subprocess.call(["perl", "XXXXX\\XXXXXX\\perl_t.pl"]) #注意路径
     #subprocess.call接受字符串参数,所以arg1 = "10";
     #有参数调用方法
     subprocess.call(["perl", "XXXXX\\XXXXXX\\\perl_t.pl", arg1, arg2]) #注意路径

 
 perl代码
 print "call perl\n";
 sub fun0
 {
     my $fun0_t0 = $ARGV[0];
     my $fun0_t1 = $ARGV[1];
     print "\$fun0_t0: ($fun0_t0)\n";
     print "\$fun0_t1: ($fun0_t1)\n";
 }
 fun0();
 sleep(1000);
 修改上面的路径就可以只接运行程序
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/09/12 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档