编程语言中制表符的行为
大多数编程语言的字符串打印语句中的制表符\t
的输出遵循相同的规则
从结果上看,制表符的作用是尽力而为,让以\t
为分割符的字符串字段之间不挨在一起,同时对于多行数据,尽可能对齐
这种策略对于各个字段长度相近的时候效果比较好,尤其是每个字段长度都小于制表符对空格的当量,比如一个制表符对应(最多)8个空格时,当所有字段都是小于8个字符(0~7)时,那么输出的表格将会很整齐;但是对于字段长度差异较大的情况,对齐效果就不是那么好
总之,制表符不是那么智能,能够对齐复杂情况的代码不是只靠一个制表符就能搞定
字符串中的制表符的行为
形式化描述为:若字符串A\tB
(其中A,B是字符串,A前面是换行符或者为空,\t
制表符对应的空格数量为 n n n),并设A,B的字符数量分别为 a , b a,b a,b;那么 a a a除以 n n n的结果 r r r,式子 w = n − r w=n-r w=n−r= n − ( a % n ) n-(a\%{n}) n−(a%n)就是A,B之间的空格数量;
例如, a = 7 a=7 a=