草庐IT

perl-critic

全部标签

python - Perl Inline::Python 模块,如何将代码放入字符串中

我正在学习perlInline::Python库。在cpan网站的例子中,我们有print"9+16=",add(9,16),"\n";print"9-16=",subtract(9,16),"\n";useInlinePython=>是否可以将python代码放入字符串中,以便我可以在运行时创建python代码?例如,像这样的东西:my$python_code="defadd(x,y):returnx+y";print$python_code;useInlinePython=>"$python_code";print"9+16=",add(9,16),"\n";我们有一个项目将在运行

python - 在 Python 中是否有任何等同于 Perl 正则表达式的\K 反斜杠序列?

Perl的正则表达式有\K反斜杠序列:\KThisappearedinperl5.10.0.Anythingmatchedleftof\Kisnotincludedin$&,andwillnotbereplacedifthepatternisusedinasubstitution.Thisletsyouwrites/PAT1\KPAT2/REPL/xinsteadofs/(PAT1)PAT2/${1}REPL/xors/(?.Mnemonic:Keep.Python中有什么等价物吗? 最佳答案 建议替换Pythonre模块,avai

python - Perl 6 是否具有与 Python 的 bytearray 方法等效的方法?

我在Raku中找不到bytearray方法或类似方法doc就像在Python中一样。在Python中,bytearray定义如下:classbytearray([source[,encoding[,errors]]])Returnanewarrayofbytes.Thebytearrayclassisamutablesequenceofintegersintherange0Raku应该提供这个方法还是某个模块? 最佳答案 我认为您正在寻找Buf-可变的(通常是无符号的)整数序列。使用:bin打开一个文件返回一个Buf。

python - Python 和 Perl 解决方案对 Wide Finder 挑战的比较

如果您能比较获胜的O’Rourke'sPerlsolution,我将不胜感激至Lundh'sPythonsolution,因为我对Perl的了解不够好,无法理解那里发生了什么。更具体地说,我想知道是什么让Perl版本具有3倍的优势:算法优势、C扩展的质量以及其他因素?WideFinder:Results 最佳答案 perl的更好的正则表达式实现是故事的一部分。然而,这无法解释为什么perl实现的扩展性更好。处理器越多,差异就越大。出于某种原因,python实现在那里存在问题。 关于pyt

python - Perl 的 FindBin 的 Python 等价物是什么?

这个问题在这里已经有了答案:Howdoyouproperlydeterminethecurrentscriptdirectory?(16个答案)关闭4年前。在Perl中,FindBinmodule用于定位原始脚本的目录。在Python中获取此目录的规范方法是什么?我见过的一些选项:os.path.dirname(os.path.realpath(sys.argv[0]))os.path.abspath(os.path.dirname(sys.argv[0]))os.path.abspath(os.path.dirname(__file__))

python - 如何编写 Perl、Python 或 Ruby 程序来更改 Windows 上另一个进程的内存?

我想知道是否可以使用Perl、Python或Ruby来编写一个程序,让它在另一个进程的内存(可能是堆,数据和代码数据)中寻找0x12345678,然后如果找到,将其更改为0x00000000?它类似于CheatEngine,可以在Windows上执行类似的操作。 最佳答案 我最初认为这是不可能的,但在看到Brian的评论后,我搜索了CPAN,你瞧,有Win32::Process::Memory:C:\>ppminstallWin32::Process::InfoC:\>ppminstallWin32::Process::Memory

python - 从 Perl 调用 Python 模块

我用Python创建了一个模块,它提供了十几种功能。虽然它主要在Python中使用,但仍有很大一部分旧用户将从Perl中调用它。插入此模块的最佳方法是什么?我的想法是:提供命令行实用程序的功能并进行系统调用创建某种服务器并处理RPC调用(例如,通过JSONRPC)有什么建议吗? 最佳答案 另一种选择是使用Inline::Python在您的Perl脚本中直接内联Python。.这可能比其他解决方案更简单,并且只需要一个额外的模块。 关于python-从Perl调用Python模块,我们在S

python - Is_prime 函数通过 python 中的正则表达式(来自 perl)

我读过thisarticle其中/^1?$|^(11+?)\1+$/Perl正则表达式用于测试数字是否为质数。过程:s='1'*your_number如果s与正则表达式匹配,则它不是质数。如果不是,则为素数。您如何将该正则表达式转换为Python的re模块? 最佳答案 它按原样工作(除了边缘没有斜线,Python不需要斜线):pattern=r'^1?$|^(11+?)\1+$'re.match(pattern,'1'*10)#matchesre.match(pattern,'1'*11)#doesn'tmatch此处唯一需要的非标

python - 使用perl或python将阿拉伯字符 "ا"替换为一个单词中的 "a",但替换为另一个单词中的 "ә"

我需要将纯文本UTF8文档从R到L语言更改为拉丁语言。不幸的是,它不像字符-字符音译那么容易。例如,R到L语言(ا)中的“a”可以是“a”或“ә”,具体取决于单词组成。在带有g、k、e或hamza的单词中(گ،ك،ە͌ء)我需要将所有a、o、i、u(ا،و،ى،̶)更改为拉丁语ә、ь、i、ü(称为“软”元音)。例如。سالەم变成sәlêm,ء̶变成üy,سوòمون变成sьzmên在没有g、k、e或hamza的单词中(گ،ك،ە͌ء)a、o、i、u变为拉丁字符a、o、i、u(称为“硬”元音)。例如。الما变成了alma,变成了ul,ورتا变成了orta。本质上,g、k、e或ha

python - 是否有 Python 等同于 Perl 的 __DATA__ 文件句柄?

在Perl中,我经常从脚本末尾的文件句柄__DATA__中读取数据:while(){chomp;say;}__DATA__line1line2我发现这比读取文件更快地测试代码等,因为这意味着我可以即时编辑其内容。来自doc:The__DATA__tokentellstheperlcompilerthattheperlcodeforcompilationisfinished.Everythingafterthe__DATA__tokenisavailableforreadingviathefilehandleFOOBAR::DATA,whereFOOBARisthenameofthecu