
Ruby
亮子AI
全干程序员
展开
-
【Ruby】MacOS下使用版本管理器Rbenv
用于类Unix系统的Ruby版本管理器。这是MacOS系统自带的Ruby版本,无需删除,用Rbenv来安装其他版本即可。原创 2023-04-01 09:36:14 · 2190 阅读 · 0 评论 -
【Ruby】each 和 each_with_index 的区别
在 Ruby 中需要遍历数组元素或者对象属性时,可以使用 each 或者 each_with_index。原创 2023-03-28 06:36:00 · 348 阅读 · 0 评论 -
【Ruby】查看模块中的方法、类、子模块
【代码】【Ruby】查看模块中的方法、类、子模块。原创 2023-01-04 15:02:14 · 318 阅读 · 0 评论 -
【Ruby】怎样判断一个类是否有某个方法,一个实例是否有某个属性?
当调用不存在的方法或属性时,Ruby将抛出错误。因此防御性的做法是提前检测方法或属性是否存在。原创 2022-09-16 23:06:17 · 474 阅读 · 0 评论 -
【Ruby】中文路径名报错:invalid byte sequence in UTF-8
当读取路径名,如果是中文路径名,需要转换成UTF-8,避免格式报错:为了安全起见,从用户系统中获取的字符串,都应当转成UTF-8。原创 2022-07-07 15:52:57 · 701 阅读 · 0 评论 -
【Ruby】.select 和 .find 的区别
select 和 find 方法都是遍历数组或哈希表,寻找匹配的元素。.find.find 方法遍历数组,计算块中的表达式,如果块的表达式返回ture,则返回该数组元素。也就是说,find是找到匹配的第一个元素。.detect 方法是 .find 的别名,因此两个方法的处理结果是一样的。如果没有找到匹配的元素,则返回NIL。例子:>> [1,2,3,4,5,6,7].find { |x| x.between?(3,4) }=> 3>> [1,2,3,4,5,6,原创 2022-05-01 08:08:27 · 764 阅读 · 0 评论 -
【Ruby】can‘t modify frozen string
当出现错误: can’t modify frozen string,说明该字符串的状态是不能修改的。使用 clone 方法获得的字符串也是不能修改的。解决这个问题的方法是使用 dup 方法,这个方法只是复制字符串的内容,并不会复制字符串的状态。new_string = Origin_string.dup...原创 2022-05-01 00:22:39 · 2854 阅读 · 0 评论 -
【 Ruby 】怎样获取文件名、后缀名、路径等信息
假设你已经有了一个绝对路径的文件名:path = "/path/to/xyz.mp4"怎样解析这个路径名来获取其中的信息呢?Ruby的File对象内置方法如下:File.basename(path) # => "xyz.mp4"File.extname(path) # => ".mp4"File.basename(path, ".mp4") # => "xyz"File.basename(path, ".*") # => "xyz"原创 2021-08-13 14:03:48 · 1622 阅读 · 0 评论 -
【 Ruby 】把数组转成 Hash,使用特定字段作为 key
直接上代码:users_by_id = Users.map { |user| [user.id, user] }.to_h原创 2021-07-20 15:15:13 · 434 阅读 · 0 评论 -
Ruby 中怎样查看 Hash?
为了输出格式优美的 Hash 值,你可以使用内建的库 pp:require 'pp'pp my_hash原创 2021-01-21 15:12:58 · 113 阅读 · 0 评论 -
Ruby 如何创建模块变量?
Ruby 支持直接创建模块变量,作用域就是整个模块:module Site @@name = "StackOverflow" def self.setName(value) @@name = value end def self.name @@name endendSite.name # => "StackOverflow"Site.setName("Test")Site.name # => "Tes原创 2021-01-18 06:08:19 · 299 阅读 · 0 评论 -
如何找到 SketchUp 插件所在的目录?
这是 SketchUp 初学者常问的问题。SketchUp 的插件位置与安装位置常常不在同一个目录下,具体位置取决于操作系统、安装方法等。下面教你一个找出插件目录的方法,它适合于所有的操作系统。打开 Ruby 控制台,输入下面的命令:UI.openURL(Sketchup.find_support_file("Plugins"))这时会打开资源管理器窗口,你就看到了插件目录!...原创 2020-12-22 15:24:40 · 13306 阅读 · 0 评论 -
Sketchup, 获取 Ruby 版本信息
在 Ruby 控制台,输入一下代码:"#{RUBY_VERSION}-p#{RUBY_PATCHLEVEL}"2.5.5-p157原创 2020-12-13 16:53:18 · 534 阅读 · 0 评论 -
Sketchup, Ruby 计算操作所花的时间
直接上代码:UI.start_timer(0.1,false) do t = Time.now File.open(path2,'wb') {|f| f.write(a) } File.delete(path2) File.open(path2,'wb') {|f| f.write(a) } File.delete(path2) File.open(path2,'wb') {|f| f.write(a) } File.delete(path2) File.open(pat原创 2020-12-13 13:52:56 · 202 阅读 · 1 评论 -
SketchUp 更新插件,不用重启让更新生效
在Ruby控制台输入命令:load MYPLUG.rb如果插件位于子目录subdir,则这样刷新插件:load "subdir/MYPLUG.rb"原创 2020-12-04 15:55:44 · 833 阅读 · 0 评论 -
修改gem为国内源
在网上搜,通常是改成 ruby.taobao.org, 或者 gem.ruby-china.org, 但实际上这两者都失效了。目前腾讯的源可用,因此这样改:gem sources --reove https://rubygems.org/gem sources -a https://mirrors.cloud.tencent.com/rubygems/gem sources -l...原创 2020-11-23 15:28:16 · 3238 阅读 · 0 评论 -
安装Jekyll
为避免使用 sudo 来全局安装,先在 .bashrc 中增加:# Ruby exportsexport GEM_HOME=$HOME/gemsexport PATH=$HOME/gems/bin:$PATH然后再安装 Jekyll:$ gem install jekyll bundler原创 2019-04-12 07:39:12 · 161 阅读 · 0 评论