转自:
http://www.cnblogs.com/yjmyzz/archive/2010/02/22/1671130.html
共同点:都是用来屏幕输出的。
不同点:
puts 输出内容后,会自动换行(如果内容参数为空,则仅输出一个换行符号);另外如果内容参数中有转义符,输出时将先处理转义再输出
p 基本与puts相同,但不会处理参数中的转义符号
print 基本与puts相同,但输出内容后,不会自动在结尾加上换行符
s = "aaaa\nbb\tbb"
p s
p "****************"
puts s
p "****************"
print s
输出结果为(SciTE编辑器环境):
"aaaa\nbb\tbb"
"****************"
aaaa
bb bb
"****************"
aaaa
bb bb>Exit code: 0
另外,在输出双字节的字符,比如全角英文或汉字时,p会输出对应的二个字节对应的数字,而非字符
s = "中"
p s
puts s
print s
运行结果:
"\326\320"
中
中>Exit code: 0
分享到:
相关推荐
hash = {"name" => "Alice", "age" => 30} ``` **4.3 Number** 数字包括整数和浮点数。 ```ruby num = 123 ``` **4.4 String** 字符串是一系列字符的有序集合。 ```ruby str = "Hello, World!" ``` **4.5 ...
hash = { 'one' => 1, 'two' => 2 } puts hash['two'] # 输出2 ``` **4.3 Number** 数字类型包括整数(Integer)、浮点数(Float)等: ```ruby num = 123 puts num.to_s # 输出"123" ``` **4.4 String** 字符...
person = { "name" => "Alice", "age" => 30 } puts "Person: #{person}" ``` #### 三、进阶概念 ##### 1. **函数定义与调用** - **函数定义**:通过 `def` 关键字定义函数。 - **参数传递**:可以接受任意...
rescue ZeroDivisionError => e puts "错误:尝试除以零" rescue StandardError => e puts "其他错误发生:#{e.message}" ensure puts "这部分代码无论如何都会执行" end ``` 在这个例子中,如果出现 `...
rescue Exception => e puts "发生错误:#{e.message}" end ``` 总的来说,Ruby程序样例旨在帮助初学者了解和掌握这种语言的基本结构和概念。通过分析`example1`和`example3`这样的代码,你可以逐步理解类定义、...
rescue ZeroDivisionError => e puts "Cannot divide by zero: #{e.message}" ensure puts "This will always execute." end ``` **7. 文件操作** - **读取文件**: 使用`File.read`方法。 - 示例: ```ruby...
### Ruby语言介绍 #### 1. 基本的Ruby语法 ##### 1.1 变量、常量和类型 在Ruby中,变量是非常重要的组成部分。Ruby支持多种类型的变量,包括局部变量、全局变量、类变量、实例变量以及常量。 1. **局部变量**...
rescue => e # 处理异常的代码 end ``` **3.2 多线程** Ruby 支持多线程编程,可以使用 `Thread` 类创建新线程: ```ruby Thread.new do # 线程执行的代码 end ``` **3.3 文件操作** Ruby 提供了丰富的文件...
### Ruby条件判断知识点详解 #### 一、Ruby简介与特性 **Ruby** 是一种动态、面向对象的编程语言,以其简洁、易读的语法而著称。它被誉为“程序员最好的朋友”,这得益于其设计思想中的人性化理念,旨在让程序员...
hash = {"name" => "Alice", "age" => 25} hash["name"] # 返回 "Alice" ``` **4.3 Number** 数字类型包括整数和浮点数。 ```ruby num = 10 float_num = 3.14 ``` **4.4 String** 字符串表示文本数据。 ```...
cutcome = {"block1" => 1000, "book2" => 1000, "book3" => 4000} sum = 0 cutcome.each { |item, price| sum += price } print "sum = " + sum.to_s ``` 在这个例子中,`each`迭代器可以同时处理哈希中的键和值。...
##### 关键字 `puts` 和 `print` - `puts`:用于输出数据到控制台,自动换行。 - 示例: ```ruby puts "Hello, world!" ``` - `print`:也用于输出数据到控制台,但不自动换行。 - 示例: ```ruby print ...
taputs #=> `puts 'foo'` and return 'foo' 在目录中查看更多示例。配置Tapp . configure do | config | config . report_caller = true config . default_printer = :putsend 钥匙默认描述report_caller false ...
### Ruby语言教程:深入解析Ruby变量类型 #### 一、引言 在编程语言中,变量扮演着极其重要的角色,它们用于存储数据并在程序运行过程中对其进行操作。Ruby 作为一种动态类型的脚本语言,提供了多种变量类型,使得...
1.print不自动换行,puts会自动换行,一行不够写的话,可以加”\”进行连接 ruby 代码 puts 6/2 print 6/1 puts ‘hello world’ puts ‘我们都是’\ ‘中国人’ 运行结果: ruby 代码 3 6hello world 我们都是中国...
- **示例**:`hash = { 'a' => 1, 'b' => 2 }` ##### §4.3 Number - **数值类型**:Ruby支持多种数值类型,如整数和浮点数。 ##### §4.4 String - **字符串定义**:使用单引号`''`或双引号`""`定义字符串。 - **...
- **特殊方法**:`print`、`puts`、`p`等输出方法,即使无参数也可省略括号。 **示例**: ```ruby foo(1, "abc") obj.foo(1, "abc") print "x=", x, "\n" ``` ##### 代码块使用 - **基本结构**:使用`do...end`块...