您的代碼,導致您所遇到的結果是一個小問題。
當你使用:
name1 = File.readlines('first.txt').sample(1)
返回值IS NOT一個字符串,而是用1個隨機抽樣的數組。即:
["Jhon"]
這就是爲什麼你使用print
時得到的輸出["Jhon"]
。
既然你希望(和喜歡)的字符串,試試這個:
name1 = File.readlines('first.txt').sample(1)[0]
name2 = File.readlines('middle.txt').sample(1)[0]
name3 = File.readlines('last.txt').sample(1)[0]
或:
name1 = File.readlines('first.txt').sample(1).pop
name2 = File.readlines('middle.txt').sample(1).pop
name3 = File.readlines('last.txt').sample(1).pop
,或者也許你的意思,不帶任何參數,sample
將返回一個物體而不是陣列:
name1 = File.readlines('first.txt').sample
name2 = File.readlines('middle.txt').sample
name3 = File.readlines('last.txt').sample
另外,在打印時,如果創建一個字符串以包含所需的所有空格和格式,會更好。即:
name1 = File.readlines('first.txt').sample(1).pop
name2 = File.readlines('middle.txt').sample(1).pop
name3 = File.readlines('last.txt').sample(1).pop
puts "#{name1} #{name2} #{name3}."
# or
print "#{name1} #{name2} #{name3}."
sheesh,你是對的。學習somethign新的日常:) – marriedjane875