所以,在Python中(虽然我认为它可以应用于许多语言),我经常发现自己有这样的事情:
the_input = raw_input("what to print?\n")
while the_input != "quit":
print the_input
the_input = raw_input("what to print?\n")
Run Code Online (Sandbox Code Playgroud)
也许我太挑剔了,但我不喜欢这条线有多the_input = raw_input("what to print?\n")重复.它降低了可维护性和组织性.但是我没有看到任何避免重复代码的变通方法而不会进一步恶化问题.在某些语言中,我可以这样写:
while ((the_input=raw_input("what to print?\n")) != "quit") {
print the_input
}
Run Code Online (Sandbox Code Playgroud)
这绝对不是 Pythonic,Python甚至不允许在循环条件AFAIK中进行赋值.
这个有效的代码修复了冗余,
while 1:
the_input = raw_input("what to print?\n")
if the_input == "quit":
break
print the_input
Run Code Online (Sandbox Code Playgroud)
但是也感觉不对.将while 1意味着这个循环将永远运行下去; 我正在使用一个循环,但给它一个假的条件并将真正的条件放入其中.
我太挑剔了吗?有一个更好的方法吗?也许有一些我不知道的为此设计的语言结构?
在Rails中,我有一个关于如何获得多个参数的问题!例如:日志中的字符串就像这样
Processing ConfigurationsController#emergency_config (for 192.168.1.124 at 2010-05-31 11:45:53) [POST]
Parameters: {"authenticity_token"=>"I3GPKyrjmDRLkMIxFVS/47mgEI4ETO/+YW+R8R5Q2GM=", "tid"=>"1", "emergency"=>{"department"=>["1", "2", "3", "4", "5", "6", "7", "8"]}}
Run Code Online (Sandbox Code Playgroud)
那么,我怎样才能从中得到部门的价值呢?谁能告诉我答案?谢谢!
是否有一个简单,高效的Map实现,允许地图使用内存限制.
我的用例是我想动态分配创建时可用的大部分内存,但我不希望OutOFMemoryError在将来的任何时候.基本上,我想使用这个地图作为缓存,但我想避免繁重的缓存实现,如EHCache.我的需求很简单(最多一个LRU算法)
我应该进一步澄清我的缓存中的对象是char[]或类似的原语,它们不会保存对其他对象的引用.
我可以为每个条目设置最大大小的上限.
我一直在研究计算大整数的模逆的问题,即^ -1 mod n.并一直使用BigInteger的内置函数modInverse来检查我的工作.
我编写了算法,如Menezes等人的"应用密码学手册"所示.对我来说不幸的是,我没有得到所有整数的正确结果.
我的想法是线q = a.divide(b)是我的问题,因为除法函数没有很好地记录(IMO)(我的代码也遭受类似的影响).BigInteger.divide(val)是圆形还是截断?我的假设是截断,因为文档说它模仿int的行为.任何其他见解表示赞赏.
这是我一直在使用的代码:
private static BigInteger modInverse(BigInteger a, BigInteger b) throws ArithmeticException {
//trivial case: b = 0 => a^-1 = 1
if (b.equals(BigInteger.ZERO)) {
return BigInteger.ONE;
}
//all other cases
BigInteger x2 = BigInteger.ONE;
BigInteger x1 = BigInteger.ZERO;
BigInteger y2 = BigInteger.ZERO;
BigInteger y1 = BigInteger.ONE;
BigInteger x, y, q, r;
while (b.compareTo(BigInteger.ZERO) == 1) {
q = a.divide(b);
r = a.subtract(q.multiply(b));
x = x2.subtract(q.multiply(x1));
y = y2.subtract(q.multiply(y1));
a = b;
b = …Run Code Online (Sandbox Code Playgroud) 目前我的应用程序使用string [] subdirs = Directory.GetDirectories(path)来获取子目录列表,现在我想提取列表中最新(最后修改过的)子目录的路径.
实现这一目标的最简单方法是什么?(效率不是一个主要问题 - 但坚固性是)
我在WindowsXP上使用TortoiseSVN,今天在存储库浏览器中遇到了一个问题.
基本上,我可以在应用程序级别" https:// domain/svn/app1 "上浏览/结帐.但是,当我尝试浏览存储库" https:// domain/svn / " 的根级别时,将显示以下错误消息:
' https:// domain/svn '的选项:200 OK
我尝试在Web浏览器中访问https:// domain/svn,我可以在那里看到所有应用程序.
谢谢
我正在使用Java进行一些Swing GUI工作,我认为我的问题相当简单; 如何设置鼠标的位置?
我在c#windows Appliation中开发了一个示例软件.如何使其成为多语言支持软件.
例如:其中一个消息框显示"欢迎使用示例应用程序"
我在chinees操作系统中安装了该软件,但它只显示英文信息.
我正在使用"字符串表"(资源文件)来解决这个问题.
在字符串表中,我需要为英语和中文中的每条消息创建条目.
这是一个及时的过程.还有其他办法吗?
我正在研究没有浏览器的Javascript编程.我想从Linux或Mac OS X命令行运行脚本,就像我们运行任何其他脚本语言(ruby,php,perl,python ......)
$ javascript my_javascript_code.js
Run Code Online (Sandbox Code Playgroud)
我看了蜘蛛猴(Mozilla)和v8(谷歌),但这两个似乎都是嵌入式的.
是否有人使用Javascript作为脚本语言从命令行执行?
如果有人好奇,为什么我期待到这一点,我一直在关注着Node.js的.node.js的性能让我想知道javascript是否可以成为处理大数据的可行脚本语言.
c# ×3
java ×3
algorithm ×1
caching ×1
checkbox ×1
command-line ×1
dictionary ×1
directory ×1
fixed ×1
javascript ×1
localization ×1
mouse ×1
multilingual ×1
organization ×1
params ×1
python ×1
redundancy ×1
ruby ×1
scripting ×1
svn ×1
swing ×1
tortoisesvn ×1
unix ×1
v8 ×1
winforms ×1