siunitx 是一个提供多个宏的软件包,用于自动格式化数字以及前缀和单位。还有一个\num{}
宏,允许用户格式化不带任何前缀或单位的独立数字。我发现这个宏非常方便,因为它会自动格式化千位分隔符、舍入,能够进行指数格式化等。
我应该何时使用这个宏而不是仅仅使用数学模式($\pi = 3.14159$
与$\pi = \num{3.14159}$
)?
答案1
国际计量局规定,“当小数点前后只有四位数字时,通常不使用空格来分隔单个数字”。也就是说,不仅“3.141 5”的可读性不强,而且看起来是拼写错误的。在西班牙语中,有无可争议的语言权威,西班牙皇家学院(RAE),官方规定与本局一致,所以规定是“四个以上”。
因此,使用四位或更少的数字只是一个实用主义的问题:类型比3.141 5
类型更容易, \num{3.1415}
因为命令在这些情况下正确地不执行任何操作,所以这里没有问题。
有关详细信息,请参阅分隔符可能用过了,即它是一种建议,而不是规则,因此真正的困境是可读性:
\num
您对 使用的便利性有任何疑问吗 3.1415926535897932384
?
这不是一个简单的问题,因为对于人类来说,使用空格确实更容易阅读,但对于计算机来说却并非如此(例如,由于缺少空格,搜索失败)。所以真正的问题是可读性的好处。数字越短,可读性的好处就越少。因此:
“3.141 59”是否仍然比“3.14159”更具可读性?
嗯,这是一个有争议的问题,但是如果你在这些情况下忽略“超过四”的规则,长数字格式的不一致性甚至可能会让读者感到困惑(即,由于缺少分隔符,人们可能会错误地将小数点后四位算作五位)。
总之,\num{3.14159}
如果您要\num{}
在文档中的其他地方使用,请使用 。如有疑问,请始终使用\num
,\sisetup{group-minimum-digits=5}
因此如果您以后改变主意,只需更改序言中的设置即可。