我正在尝试在Prolog中打印出一个值表。目前我有以下内容:
format('+~`-t~78|+ ~n', []).
format('|~tTable Title~t~78||~n', []),
format('+~`-t~78|+ ~n', []).
制作我的标题:
+-----------------------------------------------------------------------------+
| Table Title |
+-----------------------------------------------------------------------------+
现在我想填充一些列以在
下生成以下格式+-----------------------------------------------------------------------------+
| Name | Age | Eye Colour | Phone Number |
+-----------------------------------------------------------------------------+
| Joe Bloggs | 21 | Blue | 01234567890 |
+-----------------------------------------------------------------------------+
| John Smith | 32 | Brown | (+44) 012345678 |
+-----------------------------------------------------------------------------+
我尝试了多种均匀分布色谱柱的方法。但是这段代码:
format('| ~s~t~28|| ~s~t~8|| ~s~t~20|| ~s~t~24||~n',
['Name', 'Age', 'Eye Colour', 'Phone Number']).
给我一些不均匀的柱子。
+-----------------------------------------------------------------------------+
| Name | Age| Eye Colour| Phone Number|
+-----------------------------------------------------------------------------+
关于这方面的文件有点令人困惑,我似乎无法理解它,所以任何帮助都会受到赞赏!
答案 0 :(得分:3)
您可以使用~+
执行相对列:
?- format('| ~s~t~28|| ~s~t~8+| ~s~t~20+| ~s~t~24+|~n',
['Name', 'Age', 'Eye Colour', 'Phone Number']).
| Name | Age | Eye Colour | Phone Number |
true.
答案 1 :(得分:2)
标签间距是指绝对列:尝试
format('| ~s~t~28|| ~s~t~36|| ~s~t~56|| ~s~t~80||~n',