加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

如何指定Perl的Inline :: Python模块使用的Python版本?

发布时间:2020-12-16 06:17:46 所属栏目:大数据 来源:网络整理
导读:我正在运行Debian squeeze和perl v5.10.1,我安装了两个版本的 python: $pyversions -ipython2.5 python2.6 Python :: Inline使用python2.5 obvoiusly: $perluse Inline::Python;Inline::Python::py_eval('import sys');Inline::Python::py_eval('print sys
我正在运行Debian squeeze和perl v5.10.1,我安装了两个版本的 python:

$pyversions -i
python2.5 python2.6

Python :: Inline使用python2.5 obvoiusly:

$perl
use Inline::Python;
Inline::Python::py_eval('import sys');
Inline::Python::py_eval('print sys.version');

2.5.5 (r255:77872,Nov 28 2010,17:10:16)
[GCC 4.4.5]

我需要python2.6来运行我的python代码.我怎么能做到这一点?

解决方法

您可以在安装模块期间链接所需的版本.见 Makefile.PL:

#============================================================================
# What python are we going to try?
#============================================================================
my @pythons;
my $sep = $^O eq 'MSWin32' ? ";" : ":";
for $p (split /$sep/,$ENV{PATH}) {
    $p =~ s/^~/$ENV{HOME}/;
    $p .= "/python";
    push @pythons,{ path => $p } if -f $p && -x $p;
}

# Keep them in PATH order.
#@pythons = sort { $a->{path} cmp $b->{path} } @pythons;

my $num = 1;
print "Found these python executables on your PATH:n";
print $num++ . ". " . $_->{path} . "n" for @pythons;

my $sel = prompt("Use which?",'1');
$sel = $pythons[$sel-1] if $sel =~ /^d+$/;
$sel = { path => $sel } unless ref $sel eq 'HASH';

print "Using $sel->{path}n";

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读