小编Dav*_*ter的帖子

Vim:let和set有什么区别?

vim编辑器之间let和之间的区别是什么set

我一直想知道为什么它们都存在?

此外,我有兴趣听听它的历史背景.

vim

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

将py.test与coverage一起使用不包括导入

对于Jedi,我们想要生成我们的测试覆盖率.stackoverflow中有一个相关的问题,但它没有帮助.

我们使用py.test作为测试运行器.但是,我们无法将导入和其他"导入"内容添加到报表中.例如__init__.py,始终报告为未被发现:

Name                           Stmts   Miss  Cover
--------------------------------------------------
jedi/__init__                      5      5     0%
[..]
Run Code Online (Sandbox Code Playgroud)

显然,此文件正在导入,因此应报告为已测试.

我们开始这样的测试[*]:

py.test --cov jedi
Run Code Online (Sandbox Code Playgroud)

如你所见,我们正在使用pytest-coverage.

那么如何正确计算文件的覆盖范围__init__.py呢?

[*]我们还尝试在没有--doctest-modules(从中删除pytest.ini)的情况下启动测试并在之前激活覆盖模块py.test -p pytest_cov --cov jedi.它们都不起作用.

我提供了赏金.请尝试在Jedi内修复它.它是公开的.

python coverage.py pytest

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

始终使用寻呼机进行git diff

我正在使用less我的git寻呼机.

如果git diff输出在一个页面上是可读的,我的git会将输出打印到屏幕上.有时我打字速度太快Ctrl+D(半页下来),这会杀死我的终端.是否有选项可以启用寻呼机git diff,即使输出非常小?

不起作用:

  • git -p diff
  • git --paginate diff
  • git 设置: pager.diff = true

git git-diff git-config

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

Python:我为什么要使用next()而不是obj.next()?

Python 2.6引入了一个next函数.

为什么这有必要?人们总是可以打字obj.next()而不是next(obj).

后者更多pythonic吗?

python built-in next

25
推荐指数
3
解决办法
7011
查看次数

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

Python:为什么存在int.numerator和int.denominator?

int.numerator并且int.denominator是一个谜给我.

help(int.numerator) 状态:

最低项中有理数的分子

但据我所知,int这不是一个理性的数字.那么为什么这些属性存在呢?

python math int

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

Python从字符串中删除最后一个字符并返回它

虽然我知道有可能:

>>> a = "abc"
>>> result = a[-1]
>>> a = a[:-1]
Run Code Online (Sandbox Code Playgroud)

现在我也知道字符串是不可变的,因此是这样的:

>>> a.pop()
c
Run Code Online (Sandbox Code Playgroud)

不可能.

但这真的是首选方式吗?

python

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

Python将字符串文字转换为字符串

我想将字符串文字转换为r"r'\nasdf'"字符串('\\nasdf'在本例中).

另一个案例:r"'\nasdf'"'\nasdf'.我希望你明白.

这很重要,因为我有一个python脚本解析器,想要知道字符串文字的确切内容.

eval一个聪明的解决方案?字符串文字在(使用tokenize)之前被过滤,不应导致安全责任.除了评估文字之外,还没有更高级的解决方案吗?解析器库可能吗?

编辑:添加其他示例,以避免误解.

python string string-literals

16
推荐指数
2
解决办法
5553
查看次数

Python:为什么__getattr__捕获AttributeErrors?

我正在努力__getattr__.我有一个复杂的递归代码库,让异常传播很重要.

class A(object):
    @property
    def a(self):
        raise AttributeError('lala')

    def __getattr__(self, name):     
        print('attr: ', name)
        return 1      

print(A().a)
Run Code Online (Sandbox Code Playgroud)

结果是:

('attr: ', 'a')
1
Run Code Online (Sandbox Code Playgroud)

为什么会这样?为什么没有例外?此行为未记录(__getattr__文档).getattr()可以使用A.__dict__.有什么想法吗?

python exception-handling exception python-2.7 python-3.x

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

vim-jedi自动完成无法正常工作

我刚刚用vundle 安装了jedi-vim我的vim版本是7.3.429.我安装了jedi vi pip

每次我打.<C-Space>我得到这个错误.

Omni completion (^O^N^P) Pattern not found
Run Code Online (Sandbox Code Playgroud)

当我在这里搜索这个模式时,我找到了一个使用vim-jedi的解决方案.但不幸的是,这与jedi-vim有关.

以下是一些寄存器的输出:

:set omnifunc

omnifunc=jedi#complete


:messages

Messages maintainer: Bram Moolenaar <Bram@vim.org>
"models.py" 31L, 1052C
<emptyline>
Run Code Online (Sandbox Code Playgroud)

python vim jedi-vim

11
推荐指数
2
解决办法
8859
查看次数