我想谈谈一个互动的bash过程.
这是一个例子,所以你知道我想要的是什么:
你可以猜到,这里和那里有很多空间可以轻松操作...... ;-)
如果这也适用于子进程(由bash进程启动)和基于curses的程序,那将是非常好的.
我想在Ruby中实现这个功能,并且已经尝试过IO.popen,但奇怪的事情发生了.您也可以使用其他语言进行此操作.
由于Java 5具有自动装箱功能,为什么我不能使用Comparator对原语进行排序?一个int不会被包裹成一个Integer?
是否还有其他适用于Python的SQLite包装器,可与Rococheting的php for myp包装器相媲美?
http://www.ricocheting.com/code/php/mysql-database-class-wrapper-v3
如果当时没有这样的东西,我想我会创建自己的包装器,但我想确保我没有做多余的工作.
我已经建立了一个上面链接的网站,包装中心在PC/Mac浏览器中正确对齐.但是,在iphone safari中运行时,它会保持对齐状态,但不会居中对齐.
包装器代码是:
#wrapper {
width: 939px;
background-color: #fff;
margin: 40px auto 5px auto;
padding-bottom: 50px;
Run Code Online (Sandbox Code Playgroud)
}
有什么想法吗?
谢谢.
我想在Scala Swing应用程序中使用计时器.我可以使用Java版本,只是这意味着我必须实现ActionListener接口.我宁愿使用Scala Publishers/Reactors模型来保持一致性,所以我可以使用listenTo计时器.
这是我试过的:
class ScalaTimer(time: Int) extends Component {
val t = new javax.swing.Timer(time, new java.awt.event.ActionListener {
def actionPerformed(e: java.awt.event.ActionEvent) {
publish(new scala.swing.event.ActionEvent(this))
}
})
def start() {t.start()}
def stop() {t.stop()}
// etc
}
Run Code Online (Sandbox Code Playgroud)
不起作用this是因为引用了ActionListener而不是ScalaTimer类.
此外,我可能不应该扩展Component...我试过这个,因为我得到了Publisher/Reactor功能,但它没有真正意义.我应该这样做吗?如果是这样,我是否还需要包含其他特征,如何知道我必须实施哪些方法?
class ScalaTimer extends javax.swing.Timer with Publisher {
Run Code Online (Sandbox Code Playgroud)
(我的IDE立即标记"缺少方法Timer(Int,ActionListener)的参数",这似乎有点奇怪,因为我没有调用方法.)
Twython模块在内部使用请求模块.
我想包装/装饰请求的requests.post(*k, **kw)方法,所以Twython进行request.post(...)调用它将被透明地装饰/包裹,而不会干扰Twython模块.
如果我编辑了请求代码库,这很容易,但我很好奇如何解决向已定义的函数/方法添加装饰器的一般问题.
import requests
def magic_wrapper_doodad(...)
...
...
requests.post = magic_wrapper_doodad(my_function, requests.post) # plz?
import Twython
# thanks to the above magic, requests.post is wrapped just as if it was defined like:
@decorator
def trace(f, *args, **kw):
print("calling %s with args %s, %s" % (f.__name__, args, kw))
return f(*args, **kw)
...
... #inside requests.py now:
@trace
def post(self, *args, **kw):
...
Run Code Online (Sandbox Code Playgroud)
我该怎么写magic_wrapper_doodad()- 或者一些替代代码 - 所以我可以像这样装饰代码?
我正在为经过身份验证的RESTful API编写Python包装器.我现在正在编写我的测试套件(这里也是第一次测试编写者),但有一些问题:
1.a)我怎样才能打电话,但不必将凭证硬编码到测试中,因为我会把它扔到Github上?
1.b)我有点嘲笑,但不知道如何去做.这会让我不必打电话给实际的服务吗?最好的方法是什么?
2)我要测试什么 - 只要确保我的方法传递字典中的某些项目?
3)我应该遵循的任何最佳实践?
例如,该google-speech-api包被描述为"用于节点的Google Speech API包装器".
究竟什么是这种背景下的包装?
我试图使用自定义包装/装饰在Python,我想声明一个内部类,这样我就可以,例如打印属性的快照.我从这个问题中尝试过的事情没有成功.
这是我想要做的(注意:这段代码不起作用,我解释下面发生的事情)
class TestWrapper():
def __init__(self, a, b):
self.a = a
self.b = b
self.c = 0
def enter_exit_info(self, func):
def wrapper(*arg, **kw):
print '-- entering', func.__name__
print '-- ', self.__dict__
res = func(*arg, **kw)
print '-- exiting', func.__name__
print '-- ', self.__dict__
return res
return wrapper
@enter_exit_info
def add_in_c(self):
self.c = self.a + self.b
print self.c
@enter_exit_info
def mult_in_c(self):
self.c = self.a * self.b
print self.c
if __name__ == '__main__':
t = TestWrapper(2, 3)
t.add_in_c() …Run Code Online (Sandbox Code Playgroud) 考虑以下代码片段:
dikt = {
"City": "Denver",
"State": "Colorado",
"Street": "123 Nowhere St."
}
kal = wrap(dikt)
assert(kal("City") == dikt["City"])
assert(kal("State") == dikt["State"])
Run Code Online (Sandbox Code Playgroud)
实现该wrap功能的最简单方法是什么?我们希望包装器的__call__方法调用包装对象的__getitem__方法。