小编lai*_*e9m的帖子

如何在Vim中配置IdeaVIM Ctrl + N和Ctrl + P完成?

在Vim中,我们可以使用Ctrl + NCtrl + P完成代码完成.如何在IdeaVim for IntelliJ中配置它?

vim jetbrains-ide intellij-idea ideavim

31
推荐指数
5
解决办法
7870
查看次数

A + B没有算术运算符,Python vs C++

我试图解决一个老问题:

编写一个添加两个[整数]数字A和B的函数.不应该使用+或任何算术运算符.

最好的解决方案是这样的,引自" LintCode-A + B问题 ":

对于任何基数中的+ b,我们可以将加号视为两部分:1.a + b没有进位; 2.由a + b生成的进位.然后a + b等于第1部分加第2部分.如果part1 + part2产生更多进位,我们可以重复此过程,直到没有进位.

我可以理解这个算法,一切看起来都不错,所以我在lintcode上测试了它,下面粘贴了代码.

class Solution:
    """
    @param a: The first integer
    @param b: The second integer
    @return:  The sum of a and b
    """
    def aplusb(self, a, b):

        while b != 0:
            carry = a & b
            a = a ^ b
            b = carry << 1

        return a
Run Code Online (Sandbox Code Playgroud)

但令人惊讶的是,它Time Limit Exceeded在测试用例中给了我错误[100, -100].所以我在本地运行它并为每个循环打印a,b:

(-8, 8)
(-16, 16)
(-32, …
Run Code Online (Sandbox Code Playgroud)

c++ python algorithm bit-manipulation

30
推荐指数
3
解决办法
5827
查看次数

ResponseWriter.Write和io.WriteString有什么区别?

我已经看到了三种将内容写入HTTP响应的方法:

func Handler(w http.ResponseWriter, req *http.Request) {
    io.WriteString(w, "blabla.\n")
}
Run Code Online (Sandbox Code Playgroud)

和:

func Handler(w http.ResponseWriter, r *http.Request) {
    w.Write([]byte("blabla\n"))
}
Run Code Online (Sandbox Code Playgroud)

还有:

fmt.Fprintf(w, "blabla")
Run Code Online (Sandbox Code Playgroud)

他们之间有什么区别?哪一个更喜欢使用?

string http go slice

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

Go中的Python风格生成器

我目前正在研究Tour of Go,我认为goroutines的使用方式与Python生成器类似,特别是问题66.我认为66看起来很复杂,所以我把它重写为:

package main

import "fmt"

func fibonacci(c chan int) {
    x, y := 1, 1

    for {
        c <- x
        x, y = y, x + y
    }
}

func main() {
    c := make(chan int)
    go fibonacci(c)

    for i := 0; i < 10; i++ {
        fmt.Println(<-c)
    }
}
Run Code Online (Sandbox Code Playgroud)

这似乎有效.几个问题:

  1. 如果我将通道上的缓冲区大小调高,比如10,fibonacci将尽快填满10个其他位置,并尽可能快地main消耗掉这些位置.这是正确的吗?这会比以1的缓冲区大小更高的性能而牺牲内存,对吗?
  2. 由于频道没有被fibonacci发送者关闭,当我们离开这里的范围时会发生什么?我的期望是,一旦cgo fibonacci超出范围,渠道和它的一切得到垃圾收集.我的直觉告诉我这可能不会发生什么.

python generator go goroutine

28
推荐指数
4
解决办法
6238
查看次数

Flask,使用send_static_file继续获取404服务静态文件

我按照如何在Flask中提供静态文件的说明,但仍然无法使其工作.

这是我的项目结构:

Project_path  
 |
 +--app
 |  |
 |  +--main.py
 +--static
    |
    +--js
       |
       +--jquery-1.11.2.min.js
Run Code Online (Sandbox Code Playgroud)

这是main.py:

@app.route('/js/<path:path>')
def serve_static(path):
    root_dir = os.path.dirname(os.getcwd())
    print(os.path.join(root_dir, 'static', 'js', path))
    return app.send_static_file(os.path.join(root_dir, 'static', 'js', path))
Run Code Online (Sandbox Code Playgroud)

这是index.html:

  ...
  <script type="text/javascript" src="/js/jquery-1.11.2.min.js"></script>
  ...
Run Code Online (Sandbox Code Playgroud)

而当我访问/,我可以看到在屏幕上打印javascript文件的正确路径
Project_path/static/js/jquery-1.11.2.min.js.

但是,我还是

127.0.0.1 - - [22/Dec/2014 11:26:30] "GET /js/jquery-1.11.2.min.js HTTP/1.1" 404 -
Run Code Online (Sandbox Code Playgroud)

任何帮助表示赞赏.

编辑
在逐步完成该send_static_file方法之后,我会发现发生了什么.基本上,我不应该使用abspath作为参数,烧瓶有一个判断send_static_file:

if os.path.isabs(filename) or \
   filename == '..' or \
   filename.startswith('../'):
    raise NotFound()
Run Code Online (Sandbox Code Playgroud)

因为filename …

python flask

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

Python枚举,何时何地使用?

Python 3.4.0介绍enum,我已经阅读了doc但仍然不知道它的用法.从我的角度来看,枚举是一种扩展namedtuple类型,可能不是真的.所以这些是我想知道的枚举:

  1. 何时何地使用枚举?
  2. 为什么我们需要枚举?有什么好处?
  3. 什么是枚举?

python enums python-3.4

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

PyCharm - 社区版能够突出显示css/javascript吗?

我正在探索PyCharm的功能,以决定是否应该使用它(现在是PyDev).一切看起来都很棒,但我还没有办法让PyCharm突出显示css或js文件:
在此输入图像描述

这是仅在商业版中提供的功能吗?

python ide pycharm

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

当我已经进入远程机器时,如何scp回到本地?

我经常遇到这种情况:我遇到了远程服务器并运行了一些程序,我想将他们的输出文件复制回我的本地机器.我所做的是记住远程机器上的文件路径,然后退出连接scp user@remote:filepath .

显然这不是最佳的.我正在寻找的是一种方法,让我scp文件回到本地机器而不退出连接.我做了一些搜索,几乎所有的结果都告诉我如何从我的本地机器上做scp,我已经知道了.

这可能吗?更好的是,是否可以不需要知道我本地机器的IP地址?

linux ssh scp

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

django内容类型 - 如何获取内容类型的模型类来创建实例?

我不知道如果我清楚标题静止,我想做的是下一个案例:

>>> from django.contrib.contenttypes.models import ContentType
>>> ct = ContentType.objects.get(model='user')
>>> ct.model_class()
<class 'django.contrib.auth.models.User'>
>>> ct_class = ct.model_class()
>>> ct_class.username = 'hellow'
>>> ct_class.save()
TypeError: unbound method save() must be called with User instance as first argument        (got nothing instead)
Run Code Online (Sandbox Code Playgroud)

我只想实例化我通过内容类型获得的任何模型.之后我需要做类似的事情, form = create_form_from_model(ct_class) 并准备好使用这个模型表单.

先感谢您!.

python django django-contenttypes

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

为什么我们应该使用()函数的RxJs?

在角度为2的angular.io教程的服务部分,我点击了一个名为of.for的方法,例如:

getHeroes(): Observable<Hero[]> {
  return of(HEROES);
}
Run Code Online (Sandbox Code Playgroud)

或在下面的样本:

getHero(id: number): Observable<Hero> {
  // Todo: send the message _after_ fetching the hero
  this.messageService.add(`HeroService: fetched hero id=${id}`);
  return of(HEROES.find(hero => hero.id === id));
}
Run Code Online (Sandbox Code Playgroud)

在angular.io刚刚解释

使用()的RxJS返回一个模拟英雄的Observable(Observable).

并没有解释为什么我们应该使用功能,它究竟做了什么,它有什么好处?

javascript service rxjs angular2-services angular

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