ruby学习笔记(一)安装和基本语法
关于ruby
为什么学习ruby
和Python一样,Ruby也是一个相当开发者友好的语言,遵循着最小惊讶原则设计的ruby语言甚至在一定程度上比起Python更加容易学习和使用。ruby on rails在web运用相当广泛,在学习成本不高的前提下学习ruby还是相当合算的。
学习资源
安装和使用
安装
Linux下直接apt-get install ruby
就好,Windows下有安装包。嗯不多说了…
命令行
bash下输入irb
即可进入ruby的交互式命令行工具,用来学习语法命令行很棒。退出irb命令行输入exit
、quit
或CTRL+D。也可以输入ruby
进入命令行,输入CTRL+D运行,但是体验大概不太好。
运行脚本
ruby源文件后缀为rb
编写一个test.rb
然后在bash中输入ruby test.rb
即可运行。
基础
第一个ruby程序
新建一个helloworld.rb
在里面输入puts "hello world"
,保存并运行。
1 | $ ruby helloworld.rb |
嗯,和ruby的幸福生活开始了呢。
基本语法
输入输出
标准输入输出
输入使用gets
,标准的输出使用puts
或print
,两者用法相似,不同之处在于puts
在输出完成以后会进行一次换行,相当于Java的println()
,但是当输出字符串结尾是换行时两者功能一致,单个字符的输出也可以使用putc
。注意:没有getc
。
example:
1 | val=gets #在控制台输入hello |
here document
ruby中有一种here document用于输出多行字符串。here document通过<<
运算符指定结束标记,输出结束标记前的所有文本。结束标记可以用双引号框起来也可以不狂
example:
1 | print <<EOF |
文件输入输出
- 文件打开:File.open()和File.new(),两者的不同在于open()可以与块关联,关于块的内容留在后面介绍。
- 文件关闭: File.close()
- 读文件:sysread()
- 写文件: syswrite()
看例子:
1 | # file new |
上面代码中的|aFile|用于定义局部变量。File.new()和File.open()的第二个参数为打开模式,有一下选项:
- r: 只读模式
- w: 只写模式(覆盖)
- a: 只写模式(追加)
- r+/w+/a+: 读写模式,区别是r+和w+的文件指针初始位于文件头,a+的文件指正初始位于文件尾;r+在找不到文件时会报错,w+和a+在找不到时会创建新文件。
源码链接: 源码
嗯…不小心入了坑,只是记录一下,应该不会花太多时间去学ruby了233