有没有Python模块可以使用Perl的Storable“解冻”冻结的数据?

2024-10-02 00:32:52 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个遗留数据库,它包含简单的数据结构(谢天谢地,没有代码引用),这些数据结构是用Perl中的^{}模块的nfreeze方法编写的。在

现在我需要将这些数据加载到Python应用程序中。有人知道Storablethaw的Python实现吗?谷歌没有帮我。在

如果需要的话,我可以从Storable源对数据格式进行反向工程,但是如果已经完成了,我宁愿避免这种有趣的事情。在

要用代码表示:给定这样的Perl程序:

#!/usr/bin/perl
use strict;
use warnings;

use MIME::Base64;
use Storable qw/nfreeze/;

my $data = {
    'string' => 'something',
    'arrayref' => [1, 2, 'three'],
    'hashref' => {
        'a' => 'b',
    },
};

print encode_base64( nfreeze($data) );

我在找一个magic_function,这样这个Python:

^{pr2}$

印刷品:

{'string': 'something', 'arrayref': [1, 2, 'three'], 'hashref': {'a': 'b'}}

当针对Perl程序的输出运行时。在


Tags: 模块代码程序数据库数据结构datastringuse
2条回答

如果第一个选项不起作用,另一个选项是编写一个简单的perl脚本来解冻数据,然后用JSON或YAML或其他可以在Python中轻松使用的格式将其写出。在

我现在还不清楚这个项目的进展情况如何,但它似乎旨在做你想做的事情:

http://gitorious.org/python-storable

相关问题 更多 >

    热门问题