perl和python的相互调用
从实用角度出发,并未付诸于解释(有时间后期补充)。程序内容直接复制到文件,即可使用。
注意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
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);
修改上面的路径就可以只接运行程序
深入学习链接:
http://www.jb51.net/article/57208.htm
http://blog.chinaunix.net/uid-26000296-id-4461522.html
perl和python的相互调用相关推荐
- python调用perl_perl和python的相互调用
从实用角度出发,并未付诸于解释(有时间后期补充).程序内容直接复制到文件,即可使用. 注意perl调用python路径在相同目录下: python调用perl则不需要 系统环境:windows7 py ...
- python mobile-hi.codemao.cn_使用thrift做c++,java和python的相互调用
linux上安装thrift见 http://jinghong.iteye.com/blog/1102535 thrift做为跨语言调用的方案有高效,支持语言较多,成熟等优点:代码侵入较强是其弱点. ...
- thrift java长连接_利用thrift在c++、java和python之间相互调用
转自:http://blog.csdn.net/andy_yf/article/details/7487384 thrift做为跨语言调用的方案有高效,支持语言较多,成熟等优点:代码侵入较强是其弱点. ...
- python golang相互调用_golang和python互相调用
2018 June 27 go, golang, python golang和python互相调用 网站 综述 golang和python之间,当前可以通过golang的cgo和python的ctyp ...
- 多个python文件相互调用_用 python提取两个文件之间的内容
我有两个文件: 一个文件叫exemple_data.csv 里面包含3个id,每个id一行 ZINC04203483 ZINC26895155 ZINC03651026 一个文件叫exemple.sd ...
- python和c++的相互调用教程
日常工作中会遇到需要python与cpp代码之间的相互调用,工作的应用复杂,都是取决于代码的多少,但是总的方法不变,这里用两个简单例子说明下,有兴趣的筒子可以探讨下~~ 我的测试环境:ubuntu16 ...
- Python实例浅谈之三Python与C/C++相互调用
参考:http://blog.csdn.net/taiyang1987912/article/details/44779719 Python实例浅谈之三Python与C/C++相互调用 二.Pytho ...
- python和c学习-学习 Python与C相互调用
缘由 稀里糊涂的,用 Python 或用 C++ Qt都能写点小程序出来.然后对Python + Qt开始有点兴趣:想学PyQt4,想了解PythonQt,也期待PySide的Windows版本.但总 ...
- python 函数定义先后是否会影响函数之间的相互调用?(不影响)
# -*- coding: utf-8 -*- """ @File : 201006_测试是否能将被调用函数写在被调用函数之后.py @Time : 2020/1/6 1 ...
最新文章
- uva 10183 How many Fibs?
- typescript索引类型_TypeScript的索引类型与映射类型,以及常用工具泛型的实现
- 项目管理(2):备战pmp
- ISAKMP:(1006):deleting node 1202729771 error TRUE reason Delete Larval
- Mysql5.6.x版本半同步主从复制的开启方法
- 【树莓派】:配置+SSH+VNC,实现深度学习目标检测
- UIView动画---移动与变形
- rest_framework之解析器、路由控制、分页
- session同步问题
- 单片机基础——C语言
- Delphi2007下cxComboBox乱码.
- matlab晶格图,科学网-MATLAB软件绘制一维双原子晶格的格波色散曲线-李金磊的博文...
- windows上面运行jar文件,Windows服务器后台运行jar包
- 在Win10下 用 Powershell 或 CMD 完成文件的 MD2 MD4 MD5 SHA1 SHA256 SHA384 SHA512 等哈希校验
- SSD算法详解 及其 keras实现 (下)
- java for语句 实现一个功能:
- 电脑安装两个jdk版本无法切换 同时安装JDK8和JDK16 配置JAVA_HOME为JDK8但 java 和 javac 版本都是16
- html导航页面滚动,可通过导航视图精确滚动页面内容的js插件
- (附源码)计算机毕业设计SSM旅游足迹分享系统
- 拓展交流空间,分享开发精彩 | 开发者说·DTalk 鉴赏
热门文章
- markdown与latex:向量形式给字母加粗 \pmb{}
- python可以嵌在vba中吗_Jupyter Notebooks嵌入Excel并使用Python替代VBA宏
- mybatis问题。foreach循环遍历数组报错情况,及其解决方法
- python 文件IO
- 第二篇:浅谈自定义头文件可能导致的重定义问题
- html 5 video
- AOJ-351-求最值之差
- 程序设计基础(C语言)教学案例-序言
- [转载] Python字典的setdefault()方法
- [转载] kotlin 字符串_Kotlin基本类型字符串