在 Ruby 中,你可以使用 s = File.read(filename)读取文件
with open(filename) as f:
s = f.read()
有没有其他方法可以让它更短(最好是一行) ,更易读?
注意: 最初我将这个问题表述为“在一行代码中完成此操作”。正如 S.Lott 所指出的,更短并不意味着更易读。所以我重新措辞了我的问题,只是为了弄清楚我的意思。我认为 Ruby 代码更好更易读,这并不一定是因为它只有一行而不是两行(尽管这也很重要) ,而是因为它是一个类方法而不是一个实例方法,实例方法没有提出关闭文件的问题,即使引发异常,如何确保文件被关闭,等等。正如下面的答案所指出的,您可以依赖 GC 来关闭文件(从而使其成为一行程序) ,但这会使代码变得更糟,即使它更短。不仅仅是因为它不可携带,还因为它不清楚。