vim编辑器之间let和之间的区别是什么set?
我一直想知道为什么它们都存在?
此外,我有兴趣听听它的历史背景.
对于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内修复它.它是公开的.
我正在使用less我的git寻呼机.
如果git diff输出在一个页面上是可读的,我的git会将输出打印到屏幕上.有时我打字速度太快Ctrl+D(半页下来),这会杀死我的终端.是否有选项可以启用寻呼机git diff,即使输出非常小?
不起作用:
git -p diffgit --paginate diffgit 设置: pager.diff = truePython 2.6引入了一个next函数.
为什么这有必要?人们总是可以打字obj.next()而不是next(obj).
后者更多pythonic吗?
该模块的Python帮助imp是讨论冻结模块.它是什么?
int.numerator并且int.denominator是一个谜给我.
help(int.numerator) 状态:
最低项中有理数的分子
但据我所知,int这不是一个理性的数字.那么为什么这些属性存在呢?
虽然我知道有可能:
>>> a = "abc"
>>> result = a[-1]
>>> a = a[:-1]
Run Code Online (Sandbox Code Playgroud)
现在我也知道字符串是不可变的,因此是这样的:
>>> a.pop()
c
Run Code Online (Sandbox Code Playgroud)
不可能.
但这真的是首选方式吗?
我想将字符串文字转换为r"r'\nasdf'"字符串('\\nasdf'在本例中).
另一个案例:r"'\nasdf'"到'\nasdf'.我希望你明白.
这很重要,因为我有一个python脚本解析器,想要知道字符串文字的确切内容.
是eval一个聪明的解决方案?字符串文字在(使用tokenize)之前被过滤,不应导致安全责任.除了评估文字之外,还没有更高级的解决方案吗?解析器库可能吗?
编辑:添加其他示例,以避免误解.
我正在努力__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__.有什么想法吗?
我刚刚用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 ×8
vim ×2
built-in ×1
coverage.py ×1
exception ×1
git ×1
git-config ×1
git-diff ×1
imp ×1
int ×1
jedi-vim ×1
math ×1
module ×1
next ×1
pytest ×1
python-2.7 ×1
python-3.x ×1
string ×1