小编zjk*_*zjk的帖子

为什么perl警告我打开我的$ fh,$ file缺少括号?

这是我第一天来到perl,我发现这个警告非常令人困惑.

在./grep.pl第10行的"我的"列表周围缺少括号.

它似乎

open FILE, $file;
Run Code Online (Sandbox Code Playgroud)

工作良好.

出什么问题了

open my $fh, $file;
Run Code Online (Sandbox Code Playgroud)

谢谢!

#!/usr/bin/perl

use strict;
use warnings;

sub grep_all {
        my $pattern = shift;

        while (my $file = shift) {
                open my $fh, $file;
                while (my $line = <$fh>) {
                        if ($line =~ m/$pattern/) {
                                print $line;
                        }   
                }   
        }   
}

grep_all @ARGV;
Run Code Online (Sandbox Code Playgroud)

perl warnings suppress-warnings

15
推荐指数
2
解决办法
4918
查看次数

一般来说IPython导入失败和python sys.path

我正在按照这篇文章制作一个ipython规则所有的virtualenvs.

根据我的理解,该帖子的主要思想是,当在virtualenv中,ipython无法找到它的模块.

(a-virtualenv)me@pc:~$ ipython
Traceback (most recent call last):
  File "/usr/bin/ipython", line 19, in <module>
    from IPython.frontend.terminal.ipapp import launch_new_instance
ImportError: No module named IPython.frontend.terminal.ipapp
Run Code Online (Sandbox Code Playgroud)

要解决这个问题,我将其添加到我的/ usr/bin/ipython中

import sys
if "/usr/lib/python2.7/dist-packages" not in sys.path:
    sys.path.append("/usr/lib/python2.7/dist-packages")
Run Code Online (Sandbox Code Playgroud)

这个技巧适用于Balthazar.但就我而言,我明白了

Traceback (most recent call last):
  File "/usr/bin/ipython", line 18, in <module>
    from IPython.frontend.terminal.ipapp import launch_new_instance
  File "/usr/lib/python2.7/dist-packages/IPython/__init__.py", line 46, in <module>
    from .frontend.terminal.embed import embed
  File "/usr/lib/python2.7/dist-packages/IPython/frontend/terminal/embed.py", line 37, in <module>
    from IPython.frontend.terminal.ipapp import load_default_config
  File "/usr/lib/python2.7/dist-packages/IPython/frontend/terminal/ipapp.py", line 38, in <module>
    from IPython.core.completer …
Run Code Online (Sandbox Code Playgroud)

python virtualenv ipython

14
推荐指数
2
解决办法
1万
查看次数

在GO中使用RSA-SHA进行签名和解码

我正在尝试签名字符串,然后用公钥验证它.我的验证结果为空.我究竟做错了什么?

    package main

import (
    "crypto"
    "crypto/rand"
    "crypto/rsa"
    "crypto/sha256"
    "crypto/x509"
    "encoding/base64"
    "encoding/pem"
    "errors"
    "fmt"
    "io/ioutil"
)

func main() {
    signer, err := loadPrivateKey("private.pem");
    if err != nil {
        fmt.Errorf("signer is damaged: %v", err)
    }

    toSign := "date: Thu, 05 Jan 2012 21:31:40 GMT";

    signed, err := signer.Sign([]byte(toSign))
    if err != nil {
        fmt.Errorf("could not sign request: %v", err)
    }
    sig := base64.StdEncoding.EncodeToString(signed)
    fmt.Printf("Encoded: %v\n", sig)


    parser, perr := loadPublicKey("public.pem");
    if perr != nil {
        fmt.Errorf("could not sign request: %v", err) …
Run Code Online (Sandbox Code Playgroud)

encryption signing go

10
推荐指数
1
解决办法
7645
查看次数

libc6:i386和libc6-i386有什么区别

我正在使用Ubuntu 14.04.2 LTS \n \l.

这是libc我安装的s.

$ dpkg --list | grep libc6
ii  libc6:amd64                                           2.19-0ubuntu6.7                                     amd64        Embedded GNU C Library: Shared libraries
ii  libc6-dbg:amd64                                       2.19-0ubuntu6.7                                     amd64        Embedded GNU C Library: detached debugging symbols
ii  libc6-dev:amd64                                       2.19-0ubuntu6.7                                     amd64        Embedded GNU C Library: Development Libraries and Header Files
ii  libc6-i386                                            2.19-0ubuntu6.7                                     amd64        Embedded GNU C Library: 32-bit shared libraries for AMD64
rc  libc6-x32                                             2.19-0ubuntu6.7                                     amd64        Embedded GNU C Library: X32 ABI Shared libraries for AMD64
Run Code Online (Sandbox Code Playgroud)

但是,当我这样做 $ sudo …

ubuntu libc

7
推荐指数
1
解决办法
2533
查看次数

如何在vim中快速添加像"=========="这样的行

我正在编辑restructuredtext文件.我经常需要在一行中加入一些像"= -`~"这样的字符,我希望该行的长度与前一行匹配.我应该怎么做这个在vim?

a long long title
=================
Run Code Online (Sandbox Code Playgroud)

谢谢!

vim

6
推荐指数
2
解决办法
276
查看次数

在makefile中缺少MACHTYPE

我的makefile有以下两行.

$(MACHTYPE)/jkweb.a: $(O) $(MACHTYPE)
        ar rcus $(MACHTYPE)/jkweb.a $(O)
Run Code Online (Sandbox Code Playgroud)

当我回声时,我可以看到MACHTYPE x86_64-pc-linux-gnu.我已经x86_64-pc-linux-gnu在当前目录中有该目录.但是当我输入make时,它会说ar: /jkweb.a: Permission denied应该是什么x86_64-pc-linux-gnu/jkweb.a.

为什么MACHTYPE丢失了?

PS该软件是Blat.该邮件列表显示变化MACHTYPE到x86_64的.

include ../inc/common.mk


O = aliType.o annoColumn.o annoFilter.o annoFormatter.o annoFormatTab.o \
    annoGrator.o annoGratorQuery.o annoOption.o annoRow.o annoStreamer.o annoStreamVcf.o \
    apacheLog.o asParse.o axt.o axtAffine.o bamFile.o base64.o \
    basicBed.o bbiRead.o bbiWrite.o bigBed.o binRange.o bits.o \
    blastOut.o blastParse.o boxClump.o boxLump.o bPlusTree.o \
    bwgCreate.o bwgQuery.o bwgValsOnChrom.o \
    cda.o chain.o chainBlock.o chainConnect.o chainToAxt.o chainToPsl.o \
    cheapcgi.o cirTree.o codebias.o colHash.o common.o correlate.o …
Run Code Online (Sandbox Code Playgroud)

makefile environment-variables

5
推荐指数
1
解决办法
4079
查看次数

为什么这个ppid == 1?我错过了关于fork()的一些事情吗?

#include <stdio.h>

int main(void)
{
    fork();
    fork();
    printf("ppid %d pid %d\n", getppid(), getpid());
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

以上代码有时会打印出来

$ ./a.out 
ppid 3389 pid 3883
ppid 3883 pid 3885
ppid 1 pid 3884
ppid 3884 pid 3886
Run Code Online (Sandbox Code Playgroud)

为什么流程3884的ppid 1?它不应该是3883吗?

c fork

5
推荐指数
1
解决办法
6786
查看次数

如何在茉莉花测试中从 beforeEach 获取当前规范的句柄?

我知道在 jasmine 2.0.0 的 beforeEach 中不再提供 currentSpec 参考(参考:https : //github.com/pivotal/jasmine/issues/492

是否有替代方法可以在 beforeEach 中找到当前的 Spec 或 Suite(嵌套套件)?

谢谢,vj。

javascript jasmine

5
推荐指数
1
解决办法
1030
查看次数

我怎样才能正确编写 `Read` 和 `Write` 的 `net.Pipe()`

我正在尝试net.Pipe(). 我认为写"haha"字符串然后读回来可能是一个很好的实验。

这是我的第一个版本。它阻塞在Write

func TestNetPipe(t *testing.T) {
    out1 := make([]byte, 10) 
    c1, c2 := net.Pipe()
    c1.Write([]byte("haha"))
    c2.Read(out1)
}
Run Code Online (Sandbox Code Playgroud)

我尝试使用 goroutine

func TestNetPipe(t *testing.T) {
    out1 := make([]byte, 10) 
    c1, c2 := net.Pipe()
    go func() {
        c1.Write([]byte("haha"))
    }() 
    fmt.Printf("%v\n", out1)
    c2.Read(out1)
    fmt.Printf("%v\n", out1)
}
Run Code Online (Sandbox Code Playgroud)

有用。但我觉得不能保证Read会读取整个"haha"字符串。它可能只读取"hah"部分。

我想知道是否有更好的方法来演示使用 net.Pipe()

go

5
推荐指数
1
解决办法
1354
查看次数

如何从类中传递数据到另一个函数(在HTMLParser中)?

我开始学习python.我的python版本是3.1

我之前从未学过OOP,所以我对HTMLParser感到困惑.

from html.parser import HTMLParser
class parser(HTMLParser):
def handle_data(self, data):
      print(data)

p = parser()
page = """<html><h1>title</h1><p>I'm a paragraph!</p></html>"""
p.feed(page)
Run Code Online (Sandbox Code Playgroud)

我会得到这个:

标题

我是一个段落!

我希望将这些数据传递给函数,我该怎么办?

抱歉我的英语不好,谢谢你的帮助!

python class function

4
推荐指数
1
解决办法
1554
查看次数