ruby – 枚举器each_slice中的’p’是什么意思?
发布时间:2020-12-17 02:42:24 所属栏目:百科 来源:网络整理
导读:出于好奇,“p”在 Ruby中的enumerable.each_slice中代表什么? 例如: (1..3).each_slice(2) {|n| p n} 打印: [1,2][3] 和 (1..3).each_slice(2) {|n| print n} 打印: 123 而: (1..3).each_slice(2) {|n| puts n} 打印: 123 解决方法 没有神奇或奇怪的行
出于好奇,“p”在
Ruby中的enumerable.each_slice中代表什么?
例如: (1..3).each_slice(2) {|n| p n} 打印: [1,2] [3] 和 (1..3).each_slice(2) {|n| print n} 打印: 123 而: (1..3).each_slice(2) {|n| puts n} 打印: 1 2 3 解决方法
没有神奇或奇怪的行为,p实际上指的是Kernel.p
each_slice正在迭代2个元素的切片.所以: 迭代1 – > n = [1,2] 内核#p在每次迭代中写入n.inspect,因此它写入字符串[1,2]然后[3],每个字符串后跟一个新行. 内核#print写入n后跟值$(字段分隔符,默认为nil),因此它写入[1,2]并立即写入[3] 最后,Kernel#puts递归写入每个数组后跟一个新行.有关它的更多信息:http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/227540 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |