【发布时间】:2010-01-14 00:59:14
【问题描述】:
您好,我想知道是否可以在代码的 while 比较部分中分配一个值。
这是目前的代码示例
startIndex = find(target, key, startIndex)
while( startIndex != -1):
matchesFound += 1
startIndex = find(target, key, startIndex + 1)
return matchesFound
我想要做的是将 startIndex = find(target, key, startIndex) 移动到 while 比较表达式中,所以它看起来像这样
while( (startIndex = find(target, key, startIndex)) != -1):
matchesFound += 1
startIndex + 1
return matchesFound
如果不是,那么更好的重构是什么?
谢谢
编辑 在尝试著名的 6.001 模块之前,我正在学习 MIT Open 课件 6.00
【问题讨论】:
-
答案仍然是否定的。重复:stackoverflow.com/questions/1663995/…
-
这两个是一样的吗?在第一种情况下,您首先使用
startIndex调用find,而在后一种情况下,您使用startIndex+1调用它。 -
是的,你是对的,彼得,我已经更正了
-
@Sam,有了这个更正,即使在 C 语言中,我也会称该代码丑陋。:) 在两个地方更改 startIndex 会使下一个接触代码的程序员绊倒。
标签: python