小编Cla*_*diu的帖子

最接近于Haskell中的subprocess.communicate

我想从Haskell做一个popen()/ python的subprocess.communicate - 启动一个程序,给它stdin,并得到它的stdout/stderr.什么是最直接/最朴素的方式?

executable haskell subprocess pipe popen

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

golfscript嵌套while循环

嵌套在golfscript中的循环中,或者我不知道如何使用它们?

我希望将Q从5迭代到0,并且对于每次迭代,将Z从10迭代到0.单循环分别运行良好,它们看起来是自包含的(不依赖于操作之间的堆栈):

5:Q;
{"Q:"Q+ p Q}
{
  Q 1- :Q;
}while

10:Z;{"Z:"Z+ p Z}{Z 1- :Z;}while
Run Code Online (Sandbox Code Playgroud)

输出:

"Q:5"
"Q:4"
"Q:3"
"Q:2"
"Q:1"
"Q:0"
"Z:10"
"Z:9"
"Z:8"
"Z:7"
"Z:6"
"Z:5"
"Z:4"
"Z:3"
"Z:2"
"Z:1"
"Z:0"
Run Code Online (Sandbox Code Playgroud)

但是如果我把Z循环放在Q循环中,我会得到奇怪的结果:

5:Q;
{"Q:"Q+ p Q}
{
  10:Z;{"Z:"Z+ p Z}{Z 1- :Z;}while

  Q 1- :Q;
}while
Run Code Online (Sandbox Code Playgroud)

输出:

"Q:5"
"Z:10"
"Z:9"
"Z:8"
"Z:7"
"Z:6"
"Z:5"
"Z:4"
"Z:3"
"Z:2"
"Z:1"
"Z:0"
"Z:0"
Run Code Online (Sandbox Code Playgroud)

基于Z打印输出两次,似乎只有一个当前条件块,并且任何执行"while"都会覆盖它.

无论如何,我将如何在golfscript中完成这一壮举?

loops while-loop nested-loops golfscript

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

python将非消除锯齿的字体渲染到内部图像

什么是最快捷的方式和准确的呈现使用Python非反锯齿字体(如TTF字体)到内部的图像(例如一个PIL.Image,即我并不需要显示它)?我说准确,因为我用pygame尝试了一段时间后,我给它的大小的渲染字体与Word或Paint中渲染的窗口不匹配.

python fonts image render truetype

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

qt:从QListView中删除项目

如何从中删除项目QListView?对于QComboBox它,removeItem但我找不到相同的功能QListView.

使用pyqt4.

qt qt4 qlistview

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

python相对导入怪异

我有一个文件:

STARTDIR/module/submodule/config.py
Run Code Online (Sandbox Code Playgroud)

我还有另一个文件:

STARDIR/utils/filesys/getAbsPath.py
Run Code Online (Sandbox Code Playgroud)

为什么这行有效config.py

from ..utils.filesys import getAbsPath
Run Code Online (Sandbox Code Playgroud)

似乎是..module,不是STARTDIR。有没有utilsmodule所有。实际上,

from .. import utils
Run Code Online (Sandbox Code Playgroud)

产量

ImportError: cannot import name utils
Run Code Online (Sandbox Code Playgroud)

python import

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

<span>是否包含多个<td>合法?

以机智:

<table><tr><span><td>Hi</td><td>Again</td></span></tr></table>
Run Code Online (Sandbox Code Playgroud)

这是合法的HTML吗?

html

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

Foreach循环javascript失败

为什么每个语句都会导致我的代码中断?我还要用javascript设置索引吗?

var email = [];

email['update'] = true;
email['e_case_id'] = $("#e_case").val();

var i = 0;

$.each($('.rowChecked'), function() {
    email['e_attachments'][i] = $(this).attr('id');
    i++;
});
Run Code Online (Sandbox Code Playgroud)

javascript jquery

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

有没有办法手动减少Python中对象的引用计数?

我正在使用一个存在一些内存问题的C库.我已经确定有时它会过早地减少引用计数,导致段错误,并设法通过保持对象列表来扩大引用计数来解决这个问题.另一方面,我还确定了引用计数过高的特定情况.有没有办法解决这些情况,从Python代码,有目的地减少引用计数?

我知道这是hackish,绝不是干净的代码或任何东西,但我必须以某种方式处理有缺陷的C库,看起来这可能比找出C代码中的问题更容易(幸运的是它是开放的) -source),修复它,然后在我必须支持的所有平台上重新编译它.

c python reference reference-counting

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

处理RAII成员变量的正确方法是什么?

我是C++的新手,还没有完全理解RAII模式.我正在编写一个通过SQLiteC++使用sqlite数据库的类.以下是一些使用数据库的示例代码:

void test() {
    SQLite::Database db(TestDbPath(), SQLITE_OPEN_READWRITE|SQLITE_OPEN_CREATE);

    db.exec("DROP TABLE IF EXISTS test");
    db.exec("CREATE TABLE test (id INTEGER PRIMARY KEY, foobar TEXT)");
}
Run Code Online (Sandbox Code Playgroud)

我想要做的是使用SQLite::Database一个类.像这样的东西会起作用:

class DBUser
{
private:
    SQLite::Database *db;

public:
    explicit DBUser(std::string &path) {
        db = new SQLite::Database(path, SQLITE_OPEN_READWRITE|SQLITE_OPEN_CREATE);
    }
    ~DBUser() {
        delete db;
    }

    void test() {
        db->exec("DROP TABLE IF EXISTS test");
        db->exec("CREATE TABLE test (id INTEGER PRIMARY KEY, foobar TEXT)");
    }
}
Run Code Online (Sandbox Code Playgroud)

那是最好的方式吗?是否有更惯用/更优雅的方式来实现这一点没有指针?

c++ constructor pointers class raii

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

如何插入文字制表符?

我在XCode中编辑Makefile.如何实际插入制表符,ASCII值为9?如果我按TAB,它会插入4个空格,并make抱怨因为几十年前创建者make有少数用户并且不想将程序更改为不需要文字标签,因为它会破坏向后兼容性或其他东西.

通常在编辑Makefile时我只是复制并粘贴一个现有的TAB字符,但是使用新的TAB字符,我不能这样做.

xcode xcode5

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

在C中,哪个更快:如果有回报,或者如果有回报?

if if是否更好,如果if语句中的每个块都返回,或者是否更好地拥有ifs链?具体而言,如果最快的话:

A:

if (condition1) {
  code1;
  return a;
}
if (condition2) {
  code2;
  return b;
}
//etc...
Run Code Online (Sandbox Code Playgroud)

B:

if (condition1) {
  code1;
  return a;
}
else if (condition2) {
  code2;
  return b;
}
//etc...
Run Code Online (Sandbox Code Playgroud)

c optimization performance conditional

0
推荐指数
2
解决办法
1388
查看次数

如何在Java中实现VTBL?

运行此代码:

class A {                                                                       
  public int x;                                                                 
  public A() {                                                                  
    function();                                                                 
  }                                                                             
  public void function() {                                                      
    this.x = 20;                                                                
  }                           
  public void printhey() { System.out.println("Hey"); }                                             
}                                                                               

class B extends A {   
  public B() {
    super();
    printhey(); 
  }                                                          
  public void function() {                                                      
    this.x = 50;                                                                
  }                                                                             
}                                                                               

public class tmp {                                                              
  public static void main(String[] args) {                                      
    System.out.println((new B()).x);                                            
  }                                                                             
}     
Run Code Online (Sandbox Code Playgroud)

打印出来:

Hey
50
Run Code Online (Sandbox Code Playgroud)

谁设置了VTBL?在A的构造函数中,function已经设置为B.但是在B构造函数中,printhey被设置为A的.

java inheritance

0
推荐指数
1
解决办法
237
查看次数

以编程方式在Windows中截取屏幕截图,而无需应用程序注意

有各种方法可以在Windows中截取正在运行的应用程序的屏幕截图.但是,我听说可以定制一个应用程序,以便通过某些Windows事件处理程序可以注意到截取屏幕截图的时间吗?是否有任何方法可以截取屏幕截图,使应用程序无法注意到?(甚至可能在VM中运行应用程序,并从主机获取屏幕截图?)我更喜欢Python中的解决方案,但任何事情都可以.

python windows events operating-system screenshot

-1
推荐指数
1
解决办法
2675
查看次数