我已经在C#中编程了一段时间,现在我想要提高我的C++技能.
上课:
class Foo
{
const std::string& name_;
...
};
Run Code Online (Sandbox Code Playgroud)
什么是最好的方法(我只想允许对name_字段的读访问):
inline const std::string& name() const { return name_; }谢谢.
这是一个经常以不同形式提出的问题,并经常得到"大声笑你没有做好"的回答.很确定这是因为人们(包括我)有一个常识场景试图用作实现,解决方案并不明显(如果你之前没有这样做过).
会接受一个"让飞出瓶子"的答案.
特定
project/
__init__.py
/code
__init__.py
sut.py
/tests
__init__.py
test_sut.py
Run Code Online (Sandbox Code Playgroud)
tests_sut.py开始的位置:
import code.sut
Run Code Online (Sandbox Code Playgroud)
在根目录中运行nosetests会导致:
ImportError: No module named code.sut
Run Code Online (Sandbox Code Playgroud)
旅行途径:
a)做亲戚使用
from ..code import sut
Run Code Online (Sandbox Code Playgroud)
b)将项目的根添加到PYTHONPATH
c)使用
sys.path.append
Run Code Online (Sandbox Code Playgroud)
在每个测试模块的开头导入之前添加..路径.
d)只记得做一个
setup.py
Run Code Online (Sandbox Code Playgroud)
在项目上,在运行测试之前将模块安装到站点包中.
因此,要求是在测试包根目录下面有可以访问项目的测试.上面的每一个对我来说都不觉得"自然",已经证明有问题或者看起来太辛苦了!
在java中这是有效的,但基本上是通过构建工具/ IDE将所有类放在类路径上.也许问题是我期待Python的"魔力"?在Flask webframework测试中已经注意到,选项d)似乎是首选.
在任何情况下,下面的陈述推荐一个首选的解决方案将消除我自己的"不自然"的感觉.
我想列出我使用yum从给定仓库安装在系统上的所有软件包.通常这样做我用yum list installed | grep "something".但现在我遇到了一个问题.我感兴趣的回购对我来说没有那些"东西".来自该回购的包装没有任何独特的特征.我如何列出它们?
我查看了yum man pages,但没有找到任何东西.我想知道是否还有其他可以使用的命令.
假设我有一个包含以下内容的模块:
def main():
pass
if __name__ == "__main__":
main()
Run Code Online (Sandbox Code Playgroud)
我想为下半部分编写单元测试(我希望实现100%的覆盖率).我发现了runpy内置模块执行导入/ __name__设置机制,但我无法弄清楚如何模拟或以其他方式检查main()函数是否被调用.
这是我到目前为止所尝试的:
import runpy
import mock
@mock.patch('foobar.main')
def test_main(self, main):
runpy.run_module('foobar', run_name='__main__')
main.assert_called_once_with()
Run Code Online (Sandbox Code Playgroud) 我想检查一个数字是否为负数.我正在寻找最简单的方法,所以一个预定义的javascript函数将是最好的,但我还没有找到任何东西,这是我到目前为止,但我不认为这是一个好方法:
function negative(number) {
if (number.match(/^-\d+$/)) {
return true;
} else {
return false;
}
}
Run Code Online (Sandbox Code Playgroud) 用简单的语言(希望用一个简单的例子),Github repo分支的前后指标是什么意思?
那个分支的影响和它所受到的关注是什么?是否"落后"是分支的坏兆头?
我运行Windows 7 RC1,它使用Vista中的相同WTM.当我查看进程时,有一些列我不确定它们的区别是什么:
谁能告诉我他们是什么?
假设我有一个相对较长的模块,但只需要一次外部模块或方法.
在模块中间导入该方法或模块是否可以?
或者应该import只在模块的第一部分.
例:
import string, pythis, pythat
...
...
...
...
def func():
blah
blah
blah
from pysomething import foo
foo()
etc
etc
etc
...
...
...
Run Code Online (Sandbox Code Playgroud)
请证明您的答案是合理的,并添加指向PEP或相关来源的链接
在驻留在包内的模块中,我需要使用在该__init__.py包内定义的函数.我如何在包内的模块中导入包,所以我可以使用该功能?
__init__在模块内导入不会导入包,而是导入一个名为的模块__init__,导致两个具有不同名称的东西副本...
有没有pythonic方式来做到这一点?
python ×4
testing ×2
.net ×1
branch ×1
c++ ×1
centos ×1
coding-style ×1
fedora ×1
github ×1
javascript ×1
mocking ×1
module ×1
nose ×1
package ×1
repository ×1
sdk ×1
taskmanager ×1
unit-testing ×1
windows ×1
yum ×1