Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby 循环语法_Ruby - Fatal编程技术网

Ruby 循环语法

Ruby 循环语法,ruby,Ruby,我正在尝试迭代一个URL以进行刮取。我的语法遗漏了什么 array = [1...100] array.each do |i| a = 'http://www.web.com/page/#{i}/'.scrapify(images: [:png, :gif, :jpg]) extract_images(a[:images]) end 对于插值,应使用双引号(”,而不是”): 对于插值,应使用双引号(”,而不是”): array=[1…100]并不像您想象的那样。它使用单个元素

我正在尝试迭代一个URL以进行刮取。我的语法遗漏了什么

array = [1...100]

array.each do |i|
    a = 'http://www.web.com/page/#{i}/'.scrapify(images: [:png, :gif, :jpg])
    extract_images(a[:images])
end

对于插值,应使用双引号(
,而不是
):


对于插值,应使用双引号(
,而不是
):


array=[1…100]
并不像您想象的那样。它使用单个元素创建一个数组,该单个元素是一个实例,其第一个值为
1
,最后一个值为
99

因此,在整理了字符串插值问题(如前所述)之后,这:

将是字符串:

"http://www.web.com/page/1...100/"
远程服务器可能不知道这意味着什么,它要么404要么给你第一页;您在其他地方的评论表明,它将为您提供第一页,并忽略URL的
…100
部分

如果你想让它从
1
循环到
99
,你会说:

(1...100).each do |i|
  # `i` will range from 1 to 99 in this block
end
如果要从
1
循环到
100
,请使用
而不是

(1..100).each do |i|
  # `i` will range from 1 to 100 in this block
end
您还可以完全放弃该范围并使用:

或者(感谢您的提醒):


array=[1…100]
并不像您想象的那样。它使用单个元素创建一个数组,该单个元素是一个实例,其第一个值为
1
,最后一个值为
99

因此,在整理了字符串插值问题(如前所述)之后,这:

将是字符串:

"http://www.web.com/page/1...100/"
远程服务器可能不知道这意味着什么,它要么404要么给你第一页;您在其他地方的评论表明,它将为您提供第一页,并忽略URL的
…100
部分

如果你想让它从
1
循环到
99
,你会说:

(1...100).each do |i|
  # `i` will range from 1 to 99 in this block
end
如果要从
1
循环到
100
,请使用
而不是

(1..100).each do |i|
  # `i` will range from 1 to 100 in this block
end
您还可以完全放弃该范围并使用:

或者(感谢您的提醒):


它找不到我的url…循环中有问题它找不到我的url…循环中有问题仍然找不到url,奇怪!不确定,但尝试从url中删除尾随斜杠
/
。确定。因为页面没有100页,所以找不到。你是对的。谢谢还是找不到网址,奇怪!不确定,但尝试从url中删除尾随斜杠
/
。确定。因为页面没有100页,所以找不到。你是对的。谢谢我个人喜欢,因为它对我来说是最清晰的。然而,这是最好的答案,因为它解决了世界上的所有问题OP@JKillian:我认为
可能是最好的,谢谢提醒。我很少在Ruby中进行这种循环,我发现
每个带有索引的\u
带有索引的\u
更为常见。我个人喜欢这样,因为我觉得它最清晰。然而,这是最好的答案,因为它解决了世界上的所有问题OP@JKillian:我认为
可能是最好的,谢谢提醒。我很少在Ruby中进行这种循环,我发现
每一个带有_索引的
带有_索引的
更为常见。
1.upto(99) do |i|
  # `i` will range from 1 to 99 in this block
end

1.upto(100) |i|
  # `i` will range from 1 to 100 in this block
end