小编Jed*_*ith的帖子

布尔方法命名可读性

简单的问题,从可读性的角度来看,您更喜欢哪种方法名称作为布尔方法:

public boolean isUserExist(...)
Run Code Online (Sandbox Code Playgroud)

要么:

public boolean doesUserExist(...)
Run Code Online (Sandbox Code Playgroud)

要么:

public boolean userExists(...)
Run Code Online (Sandbox Code Playgroud)

api readability naming-conventions

103
推荐指数
7
解决办法
4万
查看次数

多处理.Process的日志输出

有没有办法在python中使用multiprocessing.Process类时记录给定进程的stdout输出?

python concurrency logging multiprocessing

65
推荐指数
3
解决办法
4万
查看次数

将列表拆分为n组的替代方法

假设我有一个任意长度的列表,L:

L = list(range(1000))
Run Code Online (Sandbox Code Playgroud)

将该列表拆分成组的最佳方法是n什么?这是我能够提出的最好的结构,并且由于某种原因,它不觉得它是完成任务的最佳方式:

n = 25
for i in range(0, len(L), n):
    chunk = L[i:i+25]
Run Code Online (Sandbox Code Playgroud)

是否有内置功能,我缺少这个?

编辑:早期的答案是将我的for循环重新编写为listcomp,这不是主意; 你基本上以不同的形式给我我的确切答案.我正在看是否有另一种方法可以实现这一点,就像.split列表上的假设一样.我也在昨晚写的一些代码中使用它作为生成器:

def split_list(L, n):
    assert type(L) is list, "L is not a list"
    for i in range(0, len(L), n):
        yield L[i:i+n]
Run Code Online (Sandbox Code Playgroud)

python

54
推荐指数
5
解决办法
5万
查看次数

显卡是否有自己的指令集?

显卡是否有自己的指令集?我认为他们这样做,但我一直想知道它是否是专有的,或者是否有某种开放标准.

是每个GPU指令都先于CPU指令还是无缝的?那就是通过CPU在驱动程序层上调用OpenGL或DirectX,然后CPU向总线发送GPU指令,或者更精细.

gpu instruction-set

40
推荐指数
5
解决办法
2万
查看次数

c中的malloc vs mmap

我建了两个程序,一个使用malloc,另一个使用mmap.使用的执行时间mmap远远少于使用malloc.

我知道,例如,当您使用时,mmap请避免对系统进行读/写调用.并且内存访问较少.

但在使用时,还有没有其他原因的优势mmap超过malloc

非常感谢

c malloc mmap

38
推荐指数
4
解决办法
4万
查看次数

方括号"[]"在函数/类文档中的含义是什么?

我无法弄清楚csv.dictreader的参数,并意识到我不知道方括号表示什么.

来自文件:

class csv.DictReader(csvfile[, fieldnames=None[, restkey=None[, restval=None[, dialect='excel'[, *args, **kwds]]]]])
Run Code Online (Sandbox Code Playgroud)

我很欣赏类实例化的参数摘要.

谢谢

python

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

如何询问二维Java数组的行数?

我该如何询问二维数组它有多少行?

java

13
推荐指数
3
解决办法
4万
查看次数

给定切片列表,如何按顺序拆分序列?

给定切片列表,如何基于它们分离序列?

我有很长的氨基酸字符串,我想根据列表中的起止值进行拆分.一个例子可能是最明确的解释方式:

str = "MSEPAGDVRQNPCGSKAC"
split_points = [[1,3], [7,10], [12,13]]

output >> ['M', '(SEP)', 'AGD', '(VRQN)', 'P', '(CG)', 'SKAC']
Run Code Online (Sandbox Code Playgroud)

额外的括号是显示从split_points列表中选择的元素.我不认为开始 - 停止点会重叠.

我有一堆可行的想法,但看起来非常低效(代码长度明智),似乎必须有一个很好的pythonic方式来做到这一点.

python

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

-viewDidLoad未在子类UIViewController中调用

对我有耐心,我还在学习Cocoa Touch.其他-viewDidLoad没被称为问题与我的问题无关,我做了搜索.

我有FooViewController一个UIViewController子类.FooViewController.xib将其File's Owner设置为FooViewController.另外,我有Main,其App代表是MyApplication,其文件所有者是UIApplication.我的主要笔尖设置为Main.

我可以使用此流程(为简洁起见,代码剪切)使视图显示在屏幕上:

UIWindow *main;

-(void)applicationDidFinishLaunching:(UIApplication*)application {
    [self showFooViewController];
    [main makeKeyAndVisible];
}

-(void)showFooViewController {
    fooViewController = [[FooViewController alloc] init];
    if(![[NSBundle mainBundle] loadNibNamed:@"FooViewController" owner:fooViewController options:nil]) {
        DebugF(@"Failed to load FooViewController");
        return;
    }

    // Add the view and put it in place
    UIView *view = [fooViewController view];
    CGRect cur = [view frame];
    cur.origin = CGPointMake(0.0f, 20.0f);
    [view setFrame:cur];

    [main addSubview:[fooViewController view]];
}
Run Code Online (Sandbox Code Playgroud)

但是,此消息未发送到FooViewController:

- (void) viewDidLoad {
    DebugF(@"Hello!"); …
Run Code Online (Sandbox Code Playgroud)

iphone cocoa-touch objective-c

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

Objective-C"消息" - 阅读它的正确方法是什么?

您可以在objective-c中声明一个方法,并基本上将每个参数命名为两次.

我觉得这很强大,但我还不确定如何使用它......

当John Greets Kelly:

[ p Greet:"John" toPerson:"Kelly" greetWith:"hey babe" ] ;

关于它的一些东西不能自然地阅读.我不确定这是一个经验丰富的Objective-c程序员是如何写出"消息"的.

有人可以解释每个参数的两个名称的原因,并可能是一个更有用的例子,说明如何有效地使用它来在程序中加入意义?

还有什么困扰我,这是第一个参数的名称基本上与' 消息 ' 的名称相同.你如何通过编写有意义且易于理解的方法/'消息名称'来解决这个问题?

#import <Foundation/Foundation.h>

@interface Person : NSObject
{
}

-(void)Greet:(char*)from toPerson:(char*)to greetWith:(char*)greeting ;

@end

@implementation Person

-(void)Greet:(char*)from toPerson:(char*)to greetWith:(char*)greeting ;
{
  printf( "%s says %s to %s\n", from, greeting, to ) ;
}

@end



int main (int argc, const char * argv[])
{
  NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];


  Person * p = [ Person …

object objective-c message-passing

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