ruby puts, print, p方法比较】的更多相关文章

1.puts([obj[, obj2[, ....]]] ) 依次将obj和换行符输出到$>.若没有参数的话则只会输出换行符. 若参数是数组,则依次输出数组元素和换行符.若将既非数组又非字符串的对象传递给参数时,将尝试使用使用to_s方法将其化为字符串.若是nil则输出字符串"nil". 若参数是以换行符结尾时,puts将不再输出换行符. 注意:当obj为string或者array时,puts会对obj里面的转义符号进行转义:如果不是,比如Hash类型,就直接先调用to_s方法,…
三个方法的作用都是将一个字符串打印到控制台  比较项目  puts  print p   换行符 末尾添加换行符  末尾不加换行符  末尾添加换行符  非字符串对象的输出  调用该对象的to_s方法  调用该对象的to_s方法  通过inspect方法将对象转换成字符串 通过inspect方法将对象转换成字符串的方法能比to_s方法返回对程序员更加友好的对象表示. 比如,当要打印一个数组时,p输出采用的是数组字面量的表示法,而puts则只是简单的将每个元素打印到单独的一行! array =[2,…
Ruby内置的方法Object#clone和Object#dup可以用来copy一个对象,两者区别是dup只复制对象的内容,而clone还复制与对象相关联的内容,如singleton method [ruby] view plaincopyprint? s = "cat" def s.upcase "CaT" end s_dup = s.dup s_clone = s.clone s_dup.upcase #=> "CAT" (single…
ruby中的私有方法是指方法只能被隐含调用,不能被显示调用.而当没有显示接收者的时候,会把self当成接收者.因此,只能在自身中调用私有方法,这也是私有方法的调用规则. ruby的私有方法机制目的是:使得你很容易将方法分为两种,外部世界可以访问的方法和外部世界不可以访问的方法. 如下: class A def a self.method end def method p "hello world" end private :method end A.new.a method定义成私有方…
最近因为公司需求开始看ruby,先从ruby的基本数据类型开始看 看到ruby的字符串类型string,发现ruby中的字符串单双引号是不一样的,这点和Python有那么点不一样 主要是我们对字符串进行变量引用的时候要使用双引号 如下: 可支持全部的转义字符及用#{exp}将Ruby中的值插入字符串中 例: i = 5 str = “ abab#{i}cjd”  #->abab5cjd “#{‘ho‘ *3} happy new year”  #->ho ho ho happy new yea…
读文件 #Ruby 读取文件 #方法一 file = File.open("/Users/Desktop/demo.txt","r") while line = file.gets puts line end #方法二 File.open("/Users/Desktop/demo.txt","r").each_line do |line| puts line end 写文件 File.open("/Users/Des…
Ruby Dir 类和方法 Dir 是一个表示用于给出操作系统中目录中的文件名的目录流.Dir 类也拥有与目录相关的操作,比如通配符文件名匹配.改变工作目录等. 类方法 序号方法 & 描述 1Dir[pat] Dir::glob( pat) 返回一个数组,包含与指定的通配符模式 pat 匹配的文件名: * - 匹配包含 null 字符串的任意字符串 ** - 递归地匹配任意字符串 ? - 匹配任意单个字符 [...] - 匹配封闭字符中的任意一个 {a,b...} - 匹配字符串中的任意一个 D…
Ruby File 类和方法 File 表示一个连接到普通文件的 stdio 对象.open 为普通文件返回该类的一个实例. 类方法 序号方法 & 描述 1File::atime( path) 返回 path 的最后访问时间. 2File::basename( path[, suffix]) 返回 path 末尾的文件名.如果指定了 suffix,则它会从文件名末尾被删除. 例如:File.basename("/home/users/bin/ruby.exe") #=>…
今天安装cocoapods时候出现了下面的提示 Error installing pods:active support requires Ruby version >= 2.2.0//这个需求的意思就是Ruby版本低, 需要更新至2.2.0以上版本. 注:所以我就想办法更新Ruby.网上最方面的方法是用rvm安装, 也就是先安装rvm(Ruby版本管理器), 再更新Ruby. 先查看你是否安装过rvm, 执行命令 rvm -v 如果显示是图1所示, 那就是没有, 需要安装. 下面来进行安装1>…
在ruby中写顶层函数的时候,总会有一个问题,self是谁,这些方法是谁的,是什么方法. 如下: p self p self.class def talk p self end talk 输出main,Object,main 由此可见,在写顶层代码的时候,ruby自动提供了一个默认的self,它是Object类的实例对象,main. 那么这个方法talk是属于谁呢?虽然它当前的self是main. 通过特殊的规定(就是规定的.参考ruby for rails中文版153页),顶层方法是Objec…