首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >当我用Perl执行Python脚本时,为什么我没有得到任何语法错误?

当我用Perl执行Python脚本时,为什么我没有得到任何语法错误?
EN

Stack Overflow用户
提问于 2015-04-10 22:19:28
回答 1查看 3.9K关注 0票数 85

我刚刚在test.py中编写了一些测试python代码,并按如下方式启动它:

代码语言:javascript
复制
perl test.py

过了一段时间,我意识到我错了。我之所以说“过一段时间”,是因为Python代码实际上可以正确执行,就像在Python解释器中一样!

为什么我的Perl要解释我的Python?test.py看起来像这样:

代码语言:javascript
复制
#!/usr/bin/python

...Python code here...

有趣的是,如果我做相反的事情(即调用python something.pl),我会得到大量的语法错误。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-10 22:25:08

来自perlrun

如果#!行既不包含单词" Perl“也不包含单词"indir”,则执行以#!命名的程序,而不是执行Perl解释器。这有点奇怪,但它可以帮助不执行#!的机器上的人,因为他们可以告诉程序他们的外壳是/usr/bin/ Perl,然后Perl会为他们将程序分派到正确的解释器。

例如,

代码语言:javascript
复制
$ cat a
#!/bin/cat
meow

$ perl a
#!/bin/cat
meow
票数 113
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29563832

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档