1、引用文件差别
Ruby:同一目录下的文件,如/usr/local/ruby/foo.rb与/usr/local/ruby/bar.rb两个文件。如果直接在foo.rb中
require 'bar'
执行时会报找不到bar.rb错误。这是因为运行
/home/oldsong$ ruby /usr/local/ruby/foo.rb
时会在ruby安装的lib目录和/home/oldsong/目录下查找bar.rb。而不会去rb文件的目录/usr/local/ruby/下查找。所以除引用系统rb外,require中不能用相对路径。
Python:和ruby相反,python会查找脚本文件的目录,而不会查找运行脚本的当前目录,import是用相对路径。
感觉python更合理一点。
2、中文目录
Ruby如果指定中文路径,历遍目录会抱错,如果指定路径包含中文,而子目录中还有中文目录,历遍也会抱错。好像是个bug,求证