当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Ruby Table.each用法及代码示例


本文简要介绍ruby语言中 CSV::Table.each 的用法。

用法

each() { |header, self| ... }

用每一行或每一列调用块;返回 self

当访问模式为 :row:col_or_row 时,使用每个 CSV::Row 对象调用块:

source = "Name,Value\nfoo,0\nbar,1\nbaz,2\n"
table = CSV.parse(source, headers: true)
table.by_row! # => #<CSV::Table mode:row row_count:4>
table.each {|row| p row }

输出:

#<CSV::Row "Name":"foo" "Value":"0">
#<CSV::Row "Name":"bar" "Value":"1">
#<CSV::Row "Name":"baz" "Value":"2">

当访问模式为 :col 时,将每列作为包含标题和列字段数组的 2 元素数组调用块:

table.by_col! # => #<CSV::Table mode:col row_count:4>
table.each {|column_data| p column_data }

输出:

["Name", ["foo", "bar", "baz"]]
["Value", ["0", "1", "2"]]

如果没有给出块,则返回一个新的 Enumerator:

table.each # => #<Enumerator: #<CSV::Table mode:col row_count:4>:each>

相关用法


注:本文由纯净天空筛选整理自ruby-lang.org大神的英文原创作品 Table.each。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。