[英]What does *$< mean in Ruby?
我正在分析我朋友的代碼,我看到了這個小片段:
n,a=*$<
我無法弄清楚它意味着什么 - 我在許多網站上搜索過,但他們似乎並不認識這些特殊字符。
$<
是ARGF。 來自ruby的標准文檔:
ARGF是一個設計用於腳本的流,用於處理作為命令行參數提供的文件或通過STDIN傳入的文件。
這里有一個很好的解釋
*
是splat運算符。
您正在分配a
和n
在此時ARGF / STDIN內部的內容。
例:
raducroitoru@dotix ~$ cat a.txt
a
b
c
raducroitoru@dotix ~$ cat a.rb
a, n = *$<
puts "a is: #{a}"
puts "n is: #{n}"
raducroitoru@dotix ~$ ruby a.rb a.txt
a is: a
n is: b
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.