arr = io.readlines
p arr[9] # 读出第10行的数老敬陆据
读取csv文件中读取:一次读入全部(设置headers使 CSV#shift() 以CSV::Row对象返回而不是数组;使
require'csv'CSV#read() 返回 CSV::Table 对象而不是数组)CSV.read('test.csv')#=>Array#headers默认为false,如果设置为true,csv的第一行将被视为标题CSV.read('test.csv',headers:true)#=>宏丛 CSV::Table#headers设置为数组,这个数组将被作为标题CSV.read('test.csv',headers:[1,2,3,4,5])#headers设置为字符串,这个字符蔽码樱串内容将被作为标题CSV.read('test.csv',headers:"1,2,3,4,5")
文件中读取:一次读入一行
#由于模码headers配置,返回类型发生变化(这个方法默认为第一行是标题,不会进行返回)CSV.foreach'test.csv'do|row|puts row.class#=>ArrayendCSV.foreach('test.csv',headers:true)do|row|puts row.class#=>CSV::Rowend#return_headers:true 返回标题CSV.foreach('test.csv',return_headers:true)do|row|p row#=>返回Arrayend
字符串中读取:一次读取一行
CSV.parse("CSV,data,String")do|row|# use row here...end
字符串中读取:全部读取
CSV.parse("CSV,data,String")#[]方法需要返回的类型为CSV::ROW所以设置参数headers:truecontent = File.read('data.csv') csv = CSV.parse(content,headers:true) sum =0csv.eachdo|row|sum += row['id'].to_iendputs sum
这个怎么说好呢,它们无非就中掘宏是一些运算符卖册而已,每个符号的用法也有很多种,具体怎么用可以通过看书、看例子来学习,没必要一下记住那么多。比如:
%#取余运算,如8%3=2
{}#可用在输出,如输出y的值:puts"#{y}",也可用在Hash表如 $R_Key_Hash = {}
. #一般表示某种属性或方法,如对于一个窗口,self.x = 0 表示这个窗口的x坐标为0。
又如
Class Person
def Hello
puts "Hello,my name is Tom."
end
end
p=Person.new
p.Hello #执行这个程序就会输出 Hello,my name is Tom.
? #表判断,如opacity = black_color ? 255 : 128,这个意思是如果是黑色,就不透明,否则为128
, #逗号在数组中较常见,如a = ["1","2","3"],数组a的三个元素依次是1,2,3
‘ #这个在对文件的 *** 作比较常见,如下例:
if Dir.glob('txt').size == 0 #如果文件夹txt不存在
Dir.mkdir('./txt'散昌) #那么生成一个名字叫txt的文件夹
end
! # 表示 非 如 if x != 2 表示如果x不等于2
: #这个可能用在属性里
如:
class Game_Picture
attr_reader :number # 图片编号
attr_reader :origin # 原点
attr_reader :x# X 坐标
attr_reader :y# Y 坐标
attr_reader :tone # 色调
attr_reader :angle# 旋转角度
end
#分号的话,一般是写程序每行结束才用到,但其实ruby的每行结束是可以不用分号的,回车换行就行,我也只是在用Interactive Ruby编译器时才会用分号
从我上边的回答可看出,基本每个符号都用几种用法,平时多学习,多积累就好了
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)