puts "%-30s%2s%3d%2s%3d%2s%3d%2s%3d%2s%3d" % [tn,ln,a,ln,b,ln,c,ln,d,ln,e]这是Ruby,但是很多语言都使用这种格式。我忘记了如何以相同的格式输出多个变量,而不重复每种情况下的格式。在这里,我想要5个整数的"%3d%2s“,每个整数由一个‘\’隔开。
发布于 2021-06-19 07:02:47
你可以写以下内容。
def print_my_string(tn, ln, *ints)
fmt = "%-10s" + ("|#{"%2s" % ln}%3d" * ints.size) + "|"
puts fmt % [tn, *ints]
end例如,
print_my_string("hello", "ho", 2, 77, 453, 61, 999)显示
hello |ho 2|ho 77|ho453|ho 61|ho999|在计算之后
fmt = "%-10s" + ("|#{"%2s" % ln}%3d" * ints.size) + "|"
#=> %-10s|ho%3d|ho%3d|ho%3d|ho%3d|ho%3d|"https://stackoverflow.com/questions/68041076
复制相似问题