在此示例中,明星运算符对输入参数列表的作用是什么?
def main(name, data_dir='.'):
print 'name', type(name)
if __name__ == '__main__':
main(*sys.argv)
Run Code Online (Sandbox Code Playgroud)
具体来说,如果我使用星号运算符运行程序,它会打印:
name <type 'str'>
Run Code Online (Sandbox Code Playgroud)
如果在没有星形的情况下运行main(sys.argv)
则打印
name <type 'list'>
Run Code Online (Sandbox Code Playgroud) 我动态地在bash中构造一个命令.这很好用:
COMMAND="java myclass"
${COMMAND}
Run Code Online (Sandbox Code Playgroud)
现在我想动态构造一个重定向输出的命令:
LOG=">> myfile.log 2>&1"
COMMAND="java myclass $LOG"
${COMMAND}
Run Code Online (Sandbox Code Playgroud)
该命令仍会调用java进程,但输出不会重定向到myfile.log
另外,如果我这样做:
BACKGROUND="&"
COMMAND="java myclass $BACKGROUND"
${COMMAND}
Run Code Online (Sandbox Code Playgroud)
该命令不在后台运行.
有关如何获取日志重定向和后台位的任何线索?(bash -x显示按预期构造的命令)
(实际上,与此示例不同,LOG和BACKGROUND的值是动态设置的)
给定矩阵中的值,如何得到矩阵中出现值的下标?
所以在这个例子中
octave:27> X=rand(3)
X =
0.46749 0.41187 0.26832
0.91106 0.63567 0.97302
0.71809 0.55269 0.84742
Run Code Online (Sandbox Code Playgroud)
给定值0.26832我想提取下标(1,3)
当前任何一种流行的函数式语言都能很好地支持memoization,如果我要根据它的memoisation选择一个,你会推荐和为什么?
更新:我正在寻找优化有向图(节点可以是函数或数据).当图中的节点被更新时,我希望仅当它们依赖于已更改的节点时才重新计算其他节点的值.
Update2:需要免费或开源语言/运行时.
我做了很多svn/ant设置,但这次不能弄清楚出了什么问题.
使用Linux,
svn 1.6.6
ant 1.8.2
svnant 1.3.1
Run Code Online (Sandbox Code Playgroud)
我已经将svnant jar文件复制到了 $ANT_HOME/lib
top@secret:~/apps/apache-ant-1.8.2/lib$ ls -l
-rw-r--r-- 1 root root 244831 2011-06-23 07:55 ganymed.jar
-rw-r--r-- 1 root root 948100 2011-06-23 07:55 jna.jar
-rw-r--r-- 1 root root 76383 2011-06-23 07:55 svnant.jar
-rw-r--r-- 1 root root 215757 2011-06-23 07:55 svnClientAdapter.jar
-rw-r--r-- 1 root root 89412 2011-06-23 07:55 svnjavahl.jar
Run Code Online (Sandbox Code Playgroud)
等等...
我的构建文件指定:
<taskdef name="svn" classname="org.tigris.subversion.svnant.SvnTask" />
Run Code Online (Sandbox Code Playgroud)
但每当我执行
<target name="update">
<svn>
<update dir="."/>
</svn>
</target>
Run Code Online (Sandbox Code Playgroud)
我害怕:
update:
[svn] Missing 'javahl' dependencies on the classpath !
BUILD FAILED …
Run Code Online (Sandbox Code Playgroud) 我有一堆图像,我需要其他人通过网络浏览器浏览,其方式与Apache-Gallery几乎相同.
我可以将所有图像转储到目录中,以便用户点击:
会看到小缩略图并选择图像会在页面上加载完整尺寸,并可选择浏览上一张或下一张图像.
我正在寻找一个非Apache解决方案,就像精彩的Python简单的http服务器一样,可以在任何地方以最小的配置和大惊小怪的方式启动,例如
python -m SimpleHTTPServer 8000
Run Code Online (Sandbox Code Playgroud)
事实上,上面的python解决方案非常想要我想要的,除了它不缩略图像,只是一个简单的目录列表.
很高兴使用以任何通用语言编写的应用程序,只要它是自包含的,并且可以在自定义端口上运行linux(并重新迭代,而不是Apache模块).
UPDATE
我刚刚发现了一个名为curator的python脚本,它很容易运行.它从您指向的目录中的任何图像生成所需的拇指和静态html,之后您可以使用SimpleHttpServer来提供结果.
应该使用什么InputStream类型来处理将HTTP Content-Encoding设置为deflate的 URLConnection流?
对于gzip或zip的Content-Encoding,我使用GZIPInputStream,没问题.
对于"deflate"的Content-Encoding,我尝试过使用InflaterInputStream和DeflaterInputStream,但是我得到了
java.util.zip.ZipException:java.util.zip.InflaterInputStream.read中的未知压缩方法(InflaterInputStream.java:147)
我的理解是"deflate"编码是指Zlib压缩,根据文档,这应该由InflaterInputStream处理.
我需要能够访问存储在已编译的jar文件中的文件.我已经想出了如何将文件添加到项目中,但是如何在代码中引用它?我如何将文件从jar文件复制到用户硬盘上的某个位置?我知道有很多方法可以访问文件(FileInputStream,FileReader等),但我不知道如何查看自己.
从历史上看,我总是编写我的异常处理代码,如下所示:
Cursor cursor = null;
try {
cursor = db.openCursor(null, null);
// do stuff
} finally {
if (cursor != null) cursor.close();
}
Run Code Online (Sandbox Code Playgroud)
但最近,出于可读性和懒惰的原因,我已经开始这样做了:
Cursor cursor = db.openCursor(null, null);
try {
// do stuff
} finally {
cursor.close();
}
Run Code Online (Sandbox Code Playgroud)
从try-catch-finally块中分配游标(jdbc句柄,无论如何)是错误的吗?
除非JVM真正炸毁了作业,或者在作业块中的任务和第一行之间,我不确定我的旧样式是否会提供任何额外的价值,第二行肯定更具可读性和简洁性.文献通常总是采用第一种风格.
编辑 -假设我很高兴,同时初始化光标不是在这个代码块被抓,我在这个例子中唯一关心的是关闭游标,如果它通过openCursor抛出的异常的分配和打开.还假设我正在测试空值等等.. yadda ... yadda ...(我已经改变了示例来反映这一点,它不是我的问题的焦点,所以我没有将它包含在第一版)