我已经看到一些脚本要么处理存档或二进制数据,要么复制文件(不使用python默认函数)使用块或块或偏移量或缓冲区或扇区.
我创建了一个Python应用程序,外部库(存档/提取数据)或二进制文件已经满足了一些要求.我想深入了解一下,通过编写我自己的模块,将这些第三方库功能纳入我的应用程序.现在我想知道这些术语的含义以及我可以从哪里开始.上面有关于这个主题的文件吗?
任何与Python编程语言相关的文档也将受到赞赏.
我试图在Perl中做一些非常奇特的事情,我想我正在遭遇后果.实际上,我不知道我想做的事情是否可行.
我的主程序创建了这样的管道:
pipe(my $pipe_reader, my $pipe_writer);
Run Code Online (Sandbox Code Playgroud)
(最初它是管道(PIPE_READER,PIPE_WRITER)但我在尝试调试时改为常规变量)
然后它分叉,但我认为这可能与此无关.孩子这样做:
my $response = Response->new($pipe_writer);
Run Code Online (Sandbox Code Playgroud)
Response的构造函数是简单的:
sub new {
my $class = shift;
my $writer = shift;
my $self = {
writer => $writer
};
bless($self, $class);
return($self);
}
Run Code Online (Sandbox Code Playgroud)
然后孩子会写下它的回答:
$response->respond(123, "Here is my response");
Run Code Online (Sandbox Code Playgroud)
回复代码如下:
sub respond {
my $self = shift;
my $number = shift;
my $text = shift;
print $self->{writer} "$number\n";
print $self->{writer} "$text\n";
close $self->{writer}
}
Run Code Online (Sandbox Code Playgroud)
这会触发一个奇怪的编译错误:'找到运算符所期望的字符串...在"$ number \n"之前缺少运算符?' 在第一次印刷时.当然这是打印的正常语法,除了我有对象属性而不是普通句柄,它恰好是管道,而不是文件句柄.所以现在我想知道我是否不允许这样做.