目标是创建一个类似于db结果集的模拟类.
因此,例如,如果数据库查询使用dict表达式返回{'ab':100, 'cd':200},那么我想看到:
>>> dummy.ab
100
Run Code Online (Sandbox Code Playgroud)
起初我想也许我可以这样做:
ks = ['ab', 'cd']
vs = [12, 34]
class C(dict):
def __init__(self, ks, vs):
for i, k in enumerate(ks):
self[k] = vs[i]
setattr(self, k, property(lambda x: vs[i], self.fn_readyonly))
def fn_readonly(self, v)
raise "It is ready only"
if __name__ == "__main__":
c = C(ks, vs)
print c.ab
Run Code Online (Sandbox Code Playgroud)
但是c.ab返回一个属性对象.
更换setattr线路k = property(lambda x: vs[i])完全没用.
那么在运行时创建实例属性的正确方法是什么?
我通常更喜欢使用brew在我的OSX上管理我的应用程序
我能够安装docker,docker-compose和docker-machine
docker --version
Docker version 17.05.0-ce, build 89658be
docker-compose --version
docker-compose version 1.13.0, build unknown
docker-machine --version
docker-machine version 0.11.0, build 5b27455
Run Code Online (Sandbox Code Playgroud)
我没有下载并运行'Docker for Mac'应用程序.
但是,当我试图跑
> docker run -d -p 80:80 --name webserver nginx
docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.
See 'docker run --help'.
Run Code Online (Sandbox Code Playgroud)
我已经检查了sock文件
ls -lah /var/run/docker.sock /var/tmp/docker.sock
ls: /var/run/docker.sock: No such file or directory
ls: /var/tmp/docker.sock: No such file or directory
Run Code Online (Sandbox Code Playgroud)
我也试过这个提出的解决方案:Mac OS X sudo docker无法连接到Docker守护进程.docker守护程序是否在此主机上运行?
但我收到此错误消息: …
我有dt = datetime(2013,9,1,11),我想得到这个日期时间对象的Unix时间戳.
当我这样做时,(dt - datetime(1970,1,1)).total_seconds()我得到了时间戳1378033200.
当datetime.fromtimestamp我把它转换回来的时候datetime.datetime(2013, 9, 1, 6, 0).
小时不匹配.我在这里想念的是什么?
目前,我们在settings.xml中指定本地存储库的位置.是否可以通过命令行或env变量覆盖此设置,以便我有时可以使用其他位置?
在我的maven项目中,我有许多模块.是否可以通过命令行选项关闭某些模块的运行单元测试?
我的项目大约需要15分钟来完成所有单元测试.我想通过在我正在处理的模块中运行单元测试来加速整体构建.我不想进入并编辑每个单独的pom.xml来实现这一目标.
我尝试过这里概述的解决方案:我可以通过maven运行特定的testng测试组吗?然而,结果是我想要跳过的模块中的许多测试失败.我想'组'与模块的概念不一样?
我在文件中有这两个import语句:
import Data from 'component/Data.js';
import Data from 'actions/Data.js';
Run Code Online (Sandbox Code Playgroud)
两个文件都包含一个名为的类Data.
我该如何指定哪个是哪个?我该如何避免姓名冲突?
这是我的代码:
const func = () => {
return (
<div >
you're free
</div>
)}
Run Code Online (Sandbox Code Playgroud)
以某种方式,eslint标记"你是免费的"行有错误 error HTML entities must be escaped react/no-unescaped-entities
但是从我可以看到jsx已经逃脱了撇号.我可以看到这些单词you're free没有问题.如果我将其转义为',那么我将很难搜索字符串(我希望you're free在编辑器中搜索返回命中.但显然编辑器会错过,因为文本实际上是you're free)
那么解决这种eslint异常的最佳方法是什么?
我用这个命令行编译了一个cpp文件: g++ -g test.cpp
它在第28行引发异常.我想通过检查lldb中的变量来调查原因.我在第28行设置了一个断点并a.out在lldb中运行.
(lldb) n
Process 84233 stopped
* thread #1: tid = 0xa44b86, 0x00000001000017fb a.out`say(s=<unavailable>) + 987 at so.cpp:28, queue = 'com.apple.main-thread', stop reason = step over
frame #0: 0x00000001000017fb a.out`say(s=<unavailable>) + 987 at so.cpp:28
25 }
26 else{
27 s.insert(0, to_string(sz));
-> 28 s.erase(2, sz-1);
29 }
30 return s;
31 }
(lldb) po s
error: Couldn't materialize: couldn't get the value of variable s: variable not available
Errored out in Execute, couldn't PrepareToExecuteJITExpression …Run Code Online (Sandbox Code Playgroud) 我出于性能原因使用这个sql
sql_tmpl = """delete from Data where id_data in (:iddata) """
params = {
'iddata':[1, 2,3 4],
}
# session is a session object from sqlalchemy
self.session.execute(text(sql_tmpl), params)
Run Code Online (Sandbox Code Playgroud)
但是我得到了一个例外
NotSupportedError: (NotSupportedError) ('Python type list not supported. param=1', 'HY097')
Run Code Online (Sandbox Code Playgroud)
是否有任何解决方法可以允许我将列表绑定到'in'子句的参数?
main.swift文件有什么特别之处吗?
我在XCode中创建了一个基于命令行的项目.如果我把一个表达式println("Hello, World!");放在一个新的swift文件中说test.swift,我会收到错误信息: Expressions are not allowed at the top level
但是,此表达式位于由新项目中的XCode创建的main.swift中的顶层.XCode不会标记此类异常.
python ×3
maven ×2
maven-2 ×2
c++ ×1
datetime ×1
docker ×1
ecmascript-6 ×1
eslint ×1
lldb ×1
macos ×1
macos-sierra ×1
properties ×1
react-jsx ×1
runtime ×1
sqlalchemy ×1
swift ×1
timestamp ×1
xcode ×1