ruby学习笔记(10)puts,p,print的区别

共同点:都是用来屏幕输出的。

不同点:
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

作者:菩提树下的杨过
出处:http://yjmyzz.cnblogs.com
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
原文地址:https://www.cnblogs.com/yjmyzz/p/1671130.html