1
17
保持一个 phrasebook 当你通过你想要移植的代码的时候很方便。 |
2
6
在Perl中有很多方法可以做同样的事情,因此编写任何类型的交叉编译器都是…最好是痛苦的。重建( 不要 只需手动翻译)程序。 |
3
5
将Perl转换为Python的最佳“工具”仍然是您自己。学习python的语法及其工作原理 Python docs . 然后手动进行转换。例如,Perl经常使用regex,但是在Python中,字符串操作非常简单,大多数时候不需要regex。转换器如何事先知道这一点??在Perl中也有很多方法,那么转换器如何知道什么是与Python等效的最佳方法呢?因此,手动转换仍然是最好的方法 |
4
5
不幸的是,我碰到了同样的泡菜,似乎没有直接的方法。但如果你像我一样精通VIM,你可以很快想出一个像这样的清单。 只需在名为(或其他)“substitute”的文件中键入所有这些内容,然后打开perl脚本(首先备份原始脚本)并执行以下操作:source path/to/the/substitute。请注意,这绝不是完美的,但可能会给你一个良好的开始方向(希望!) 1,$s/\$\(.*\) /\1 /g 1,$s/\$\(.*\)->/\1\./g 1,$s/->/\./g 1,$s/\$//g 1,$s/ eq / \=\= //g 1,$s/@//g 1,$s/=>/:/g 1,$s/use /import /g 1,$s/::/\./g 1,$s/||/or/g 1,$s/&&/and/g 1,$s/my //g 1,$s/sub /def /g 1,$s/ undef/ None/g 1,$s/%//g 1,$s/;$//g 1,$s/\/os.environ/g 1,$s/defined //g |
5
3
另一种方法是,您可能能够重用现有的Perl代码,并用新的Python代码对其进行补充。
一种可能对您有用的方法是使用
另一种方法是让Perl生成 输出为简单的文本/json/yaml文件,由python解析。 以便进一步处理。因此,在切换到Python时,我可以使用我的遗留Perl代码而不必重写它。您的里程可能会有所不同,因为这种“粘合”方法可能太慢,不适合您的需要。当您有长时间的计算产生中间结果时,这个“pass-files”方法是很好的:您可以用Perl启动计算,然后用Python继续计算。 |
6
2
转换需要编写Perl解析器、语义检查器和Python代码生成器。 不实际。Perl解析器对于Perl团队来说已经足够困难了。最好使用Perl操作码或相关模块将Perl从Perl AST(操作码)转换为python。 http://perldoc.perl.org/Opcode.html 如果不做一些工作,一些符号就不能从Perl映射到Python。例如,Perl的闭包是不同的。它的regex支持也是如此。 简而言之,要么手工转换它,要么使用一些集成模块从Perl调用Python,反之亦然。 |
Manny · 如何比较Perl中的字符串? 2 年前 |
BioRod · 我不能用Perl打印键和值 2 年前 |
user17227456 · Perl CLI代码无法追加字符串行 2 年前 |
LearnToBeBetter · 读取文件,搜索字符串,打印字符串 2 年前 |
KJ7LNW · 一些波斯语文本的宽字符印刷,但其他文本则没有 2 年前 |
con · 如何搜索大型数据结构并返回一系列给出特定值的键/数组? 2 年前 |
Pranay Nanda · 使用regex解析许可证文件 6 年前 |