我发现自己对构造函数使用了哈希参数,特别是在编写用于配置的DSL或最终用户将要暴露的其他API时.我最终做的事情如下:
class Example
PROPERTIES = [:name, :age]
PROPERTIES.each { |p| attr_reader p }
def initialize(args)
PROPERTIES.each do |p|
self.instance_variable_set "@#{p}", args[p] if not args[p].nil?
end
end
end
Run Code Online (Sandbox Code Playgroud)
有没有更惯用的方法来实现这一目标?抛弃常数和符号到字符串转换似乎特别令人震惊.
我有一系列数字:
@numbers = 1,2,3,6,8,9,11,12,13,14,15,20
Run Code Online (Sandbox Code Playgroud)
我想以这种方式打印它:
1-3,6,8-9,11-15,20
Run Code Online (Sandbox Code Playgroud)
有什么想法吗?当然我尝试使用最常见的"循环",但仍然没有得到它.
GNU Emacs 23.1
我正在使用iswitchb.但是,当我按下时,C-x b我会得到一个缓冲区列表.但是,我不想显示一个像scratch,Messages,GNU Emacs等.只是我自己打开的缓冲区.
所以我正在寻找一种忽略这些缓冲区的方法.这就是我的配置.但是,它不会忽略我不想要的缓冲区.我做错了什么吗?
;; Setup iswitchb to select different buffers, ignore buffers to reduce list
(iswitchb-mode 1)
(setq iswitchb-buffer-ignore '("*scratch*"))
(setq iswitchb-buffer-ignore '("*Messages*"))
(setq iswitchb-buffer-ignore '("*GNU Emacs*"))
(setq iswitchb-buffer-ignore '("*compilation*"))
Run Code Online (Sandbox Code Playgroud)
非常感谢任何建议,
我想知道是否有一个网站,我可以下载移植到.net的Apache POI?
我已经在网站上找到了这个链接 http://www.apache.org/~avik/dist/poi-2.5.1-dev-20040708.dll
我还从小说中找到了poi.net的存储库,但它已经很老了(2004) http://developer.novell.com/wiki/index.php/Poi.Net
但是apache poi的版本现在是3.6,我想知道是否有最新版本?apache基金会支持这样的移植吗?我已经尝试搜索apache网站也无济于事.
至于使用Microsoft库,excel interopt对于像Web后端这样的并发处理来说并不是那么好.如果我使用DocumentFormat.OpenXML库,我只能创建office 2007文档.
如果那里没有图书馆?那里有一个JAR到.NET程序集(.dll)转换工具吗?
我在求职面试中被问到这个问题,我想知道其他人如何解决这个问题.我对Java最熟悉,但欢迎使用其他语言的解决方案.
给定一组数字,
nums返回一个数字数组products,其中products[i]是所有数字的乘积nums[j], j != i.Run Code Online (Sandbox Code Playgroud)Input : [1, 2, 3, 4, 5] Output: [(2*3*4*5), (1*3*4*5), (1*2*4*5), (1*2*3*5), (1*2*3*4)] = [120, 60, 40, 30, 24]您必须在
O(N)不使用除法的情况下执行此操作
我将输出缓冲区中的东西复制到我正在使用的C++代码中.通常这个输出会陷入字符串.能够自动转义所有控制字符而不是返回并手动编辑粘贴的片段是很好的.
作为一个例子,我可能会复制这样的东西:
error in file "foo.dat"
Run Code Online (Sandbox Code Playgroud)
并且需要把它变成这样的东西
std::string expected_error = "error in file \"foo.dat\""
Run Code Online (Sandbox Code Playgroud)
我认为可以使用最后一个粘贴的开始和结束标记将替换功能应用于最后一个粘贴的主体,但我不确定如何使其飞行.
更新:
Joey Mazzarelli使用sugested
`[v`]h:%s/\%V"/\\"/g
Run Code Online (Sandbox Code Playgroud)
粘贴后.
由于没有给出任何解释,我最初发现它有点简洁,但很难在评论中解释我认为我会解释我认为在这里做的事情:
`[ : Move to start of last paste
v : Start visual mode
`] : Move to end of last paste
h : adjust cursor one position left
:% : apply on the lines of the selection
s/ : replace
\%V : within the visual area
" : "
/ : with
\\" : \"
/g : all occurrences …Run Code Online (Sandbox Code Playgroud) 我有两个约会
ValidFrom:20-04-2010
有效期:02-05-2010
我需要知道有效期到期前4天(日期).如何计算有效期到期日前的4天02-05-2010
编辑:
一个更尖锐的问题:在我的梯度下降中使用softmax的导数是什么?
这或多或少是一门课程的研究项目,我对NN的理解非常/非常有限,所以请耐心等待:)
我目前正在建立一个神经网络,试图检查输入数据集并输出每个分类的概率/可能性(有5种不同的分类).当然,所有输出节点的总和应该加起来为1.
目前,我有两层,我设置隐藏层包含10个节点.
我想出了两种不同类型的实现
我使用梯度下降来查找局部最大值,以便调整隐藏节点的权重和输出节点的权重.我确信我对sigmoid有正确的看法.我不太确定softmax(或者我是否可以使用梯度下降),经过一些研究后,我找不到答案并决定自己计算衍生物并获得softmax'(x) = softmax(x) - softmax(x)^2(这会返回一个大小为n的列向量) .我还研究了MATLAB NN工具包,工具包提供的softmax的派生返回了一个大小为nxn的方阵,其中对角线与我手工计算的softmax'(x)一致; 我不知道如何解释输出矩阵.
我运行每个实现,学习率为0.001和1000次反向传播.但是,对于输入数据集的任何子集,我的NN为所有五个输出节点返回0.2(均匀分布).
我的结论:
任何帮助将不胜感激!
我正在使用的数据集可以在这里找到(处理过的克利夫兰):http: //archive.ics.uci.edu/ml/datasets/Heart+Disease