Questions tagged «loops»

循环是编程中的一种控制流结构,其中一系列语句可以重复执行,直到满足某些条件为止。


6
在循环内部声明变量,是好的做法还是坏的做法?
问题1:在循环内声明变量是一种好习惯还是不好的做法? 我已经阅读了其他有关是否存在性能问题(大多数人说没有)的主题,并且应该始终将变量声明为接近将要使用的变量。我想知道的是,是否应该避免这种情况,或者实际上是否应该这样做。 例: for(int counter = 0; counter <= 10; counter++) { string someString = "testing"; cout << someString; } 问题2:大多数编译器是否意识到该变量已经被声明并且仅跳过了该部分,还是实际上每次都在内存中为其创建了一个位置?

11
如何避免“ RuntimeError:字典在迭代过程中更改大小”错误?
我检查了所有其他问题,并发现了相同的错误,但没有找到有帮助的解决方案= / 我有一个列表字典: d = {'a': [1], 'b': [1, 2], 'c': [], 'd':[]} 其中某些值为空。在创建这些列表的最后,我想在返回字典之前删除这些空列表。当前,我正在尝试执行以下操作: for i in d: if not d[i]: d.pop(i) 但是,这给了我运行时错误。我知道您无法在字典中进行迭代时添加/删除字典中的元素...那么解决这个问题的方法是什么?
257 python  list  dictionary  loops 

20
异常后如何重试?
我有一个以开头的循环for i in range(0, 100)。正常情况下,它可以正常运行,但有时由于网络条件而失败。目前,我已对其进行了设置,以便在失败时,它将continue在except子句中(继续到的下一个数字i)。 我是否可以将相同的数字重新分配给i循环并再次执行失败的循环?

23
在JavaScript中遍历数组的最快方法是什么?
我从书中得知,您应该为循环编写这样的代码: for(var i=0, len=arr.length; i < len; i++){ // blah blah } 因此arr.length不会每次都计算。 其他人则说编译器会对此做一些优化,因此您可以编写: for(var i=0; i < arr.length; i++){ // blah blah } 我只想知道哪种是最佳实践?






9
如何使用Ruby Pry跳出循环?
我在Rails应用程序中使用了Pry。我binding.pry在模型中的一个循环中进行设置,以尝试调试问题。例如: (1..100).each do |i| binding.pry puts i end 当我键入时quit,它将转到下一个迭代,然后再次停止。有没有一种方法可以使您跳出循环,因此我不必键入quit100次? 目前,我知道如何摆脱它的唯一方法是使用CTRL+ C并重新启动应用程序。
212 ruby-on-rails  ruby  loops  exit  pry 

9
Ruby中的“ for”与“ each”
我只是对Ruby中的循环有一个简单的问题。这两种遍历集合的方式之间有区别吗? # way 1 @collection.each do |item| # do whatever end # way 2 for item in @collection # do whatever end 只是想知道它们是否完全相同,或者是否存在细微的差异(可能@collection是nil时)。
200 ruby  loops  foreach  iteration  each 

16
如何遍历日期范围?
我什至不知道如何在不使用某些可怕的循环/计数器类型解决方案的情况下做到这一点。这是问题所在: 给了我两个日期,一个开始日期和一个结束日期,在指定的时间间隔内,我需要采取一些措施。例如:对于2009年3月3日至2009年3月26日之间的每个日期,我需要在列表中创建一个条目。所以我的输入是: DateTime StartDate = "3/10/2009"; DateTime EndDate = "3/26/2009"; int DayInterval = 3; 而我的输出将是具有以下日期的列表: 3/13/2009 3/16/2009 3/19/2009 3/22/2009 3/25/2009 那么,我该怎么做这样的事情呢?我考虑过使用一个for循环,该循环将在范围内的每一天之间使用一个单独的计数器进行迭代,如下所示: int count = 0; for(int i = 0; i < n; i++) { count++; if(count >= DayInterval) { //take action count = 0; } } 但是似乎还有更好的方法?
196 c#  asp.net  datetime  loops 

9
加快R中的循环操作
我在R中遇到很大的性能问题。我编写了一个遍历data.frame对象的函数。它只是向中添加了一个新列data.frame并累积了一些内容。(简单的操作)。将data.frame有大约850K行。我的电脑仍在工作(现在大约10小时),我对运行时间一无所知。 dayloop2 <- function(temp){ for (i in 1:nrow(temp)){ temp[i,10] <- i if (i > 1) { if ((temp[i,6] == temp[i-1,6]) & (temp[i,3] == temp[i-1,3])) { temp[i,10] <- temp[i,9] + temp[i-1,10] } else { temp[i,10] <- temp[i,9] } } else { temp[i,10] <- temp[i,9] } } names(temp)[names(temp) == "V10"] <- "Kumm." …
193 performance  r  loops  rcpp  r-faq 

14
我如何理解Python循环的`else`子句?
许多Python程序员可能没有意识到while循环和for循环的语法包含一个可选else:子句: for val in iterable: do_something(val) else: clean_up() else子句的主体是执行某些类型的清理操作的好地方,并在循环的正常终止时执行:即,使用return或break跳过else子句退出循环;continue执行后退出。我知道这只是因为我只是看着它(再次),因为我永远记得当该else子句被执行。 总是?顾名思义,在循环的“失败”上?定期终止吗?即使循环退出return?我永远不能完全确定,不查它。 我将不确定性归咎于关键字的选择:我发现else这种语义难以置信。我的问题不是“为什么要为此目的使用该关键字”(虽然只有在阅读了答案和评论之后,我才可能会投票关闭该关键字),但我如何考虑该else关键字,以便其语义有意义,我因此可以记住吗? 我敢肯定,对此进行了大量讨论,并且我可以想象做出这一选择是为了与try语句的else:子句(我也必须查找)保持一致,并且其目标是不添加到该语句的列表中。 Python的保留字。也许选择的原因else将阐明其功能并使之更加令人难忘,但我是将名称与功能联系在一起,而不是出于历史解释本身。 这个问题的答案(我的问题作为与之重复的问题简短地结束了)包含很多有趣的背景故事。我的问题有不同的侧重点(如何将特定语义else与关键字选择联系起来),但是我觉得应该在某个地方链接到该问题。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.