Template:Convert
![]() | 此模板使用Lua语言: |
![]() | 此Template被引用於約81,000個頁面。 為了避免造成大規模的影響,所有對此Template的編輯應先於沙盒、測試樣例或您的沙盒上測試。 測試後無誤的版本可以一次性地加入此Template中,但是修改前請務必於討論頁發起討論。 模板引用數量會自動更新。 |
![]() | 本模板含有複雜而精密的扩展语法。 編輯本模板前,建議您先熟悉解析器函數与本模板的设计思路、运作原理等。若您的編輯引發了意外的問題,請儘快撤銷編輯,因為本模板可能被大量頁面使用。 您所作的编辑可先在本模板的沙盒或您的个人页面中进行測試。 |
![]() | 度量衡一般应采用国际单位制,因此建议仅在必要时使用本模板。 |
本模板提供一般數學及科學单位轉換功能。请注意,根据格式手册,度量衡一般应采用国际单位制,因此建议仅在必要时使用本模板。
用法
这个模板主要显示计量单位数值,并可将一数据自动转换成两个不同计量单位,可实现功能有数值四舍五入,计量单位的维基内部链接、计量单位简写、包括各种分隔符:括号“( )”,“or”,连字符,逗号,“to”或破折号。可以帮助用户生成正确的转换,从一个计量单位转换成另一个测量,尤其是对于更复杂的单位。转换遵循格式手册。模板生成的内容与普通文本没有什么不同。
样式包括: 距离“32米(105英尺)”和“32米或105英尺”;温度“18 °C(64 °F)”;质量 “55.0公斤(121.3磅)”及“65至80公斤(143至176磅)”。
选项包括: | lk=in , abbr=on , abbr=off , disp=x , disp=table 和 sortable=on (下面详细解释)。默认情况下,输出四舍五入到匹配的输入精度;备选方案包括:sigfig=3 或使用最终参数,如“|1 ”显示小数点后一位或“|-2 ”,显示百位整数等。
|
模板數據
換算數學單位到另一個單位
参数 | 描述 | 类型 | 状态 | |
---|---|---|---|---|
數值 | 1 | 被換算的數值 | 数字 | 可选 |
原單位 | 2 | 被換算的(輸入)單位 | 单行文本 | 可选 |
目標單位 | 3 | 換算成哪一種(輸出)單位 | 单行文本 | 可选 |
小數位或後綴 | 4 | 小數點後的精準度,如果輸入負數就會變成顯示10的次方。(重要!不提供舊版的「precision」命名參數重定向!) | 数字 | 可选 |
單位條目鏈接 | lk | 「on」對全部單位提供條目鏈接、 「in」只鏈接原輸入單位、 「out」只鏈接輸出單位、「off」不提供鏈接。(重要!新版不提供「link」重定向參數!所有「link」參數必須移除或改成「lk」!)
| 单行文本 | 可选 |
略稱 | abbr | 「on」將單位變成略稱,大部分為拉丁字母略稱、 「off」全部單位顯示全名,大部分已經翻譯為中文、「in」只縮略輸入單位、「out」只縮略輸出單位、「values」隱藏所有單位。
| 单行文本 | 可选 |
顯示方式 | disp | 「b」以圓括號包圍輸出顯示、「x」使用方括號、「or」以「或」字取代括號鏈接輸入和輸出顯示、「table」或「tablecen」以維基列表代碼分隔和令每一格靠右或置中、「output only」只顯示輸出結果、「output number only」只顯示輸出數字不提供單位、「flip」調換輸入輸出位置、「unit」只顯示輸入單位名、輸入數字的場合下視作「小數位或後綴」參數。
| 单行文本 | 可选 |
精準度 | sigfig | 輸入數字改變多少位化整為零。 | 数字 | 可选 |
排序開關 | sortable | 「on」 會在顯示結果前生成一個隱藏的數據方便在使用了sortable class的列表中排序。 | 单行文本 | 可选 |
美制 | sp | 「us」顯示US,此為英文版痕跡參數,中文版不要使用。 | 单行文本 | 可选 |
形容詞句式 | adj | 英文版痕跡參數,「on」顯示形容詞句式(連字符接著單數格單位名),「mid」增加一個新的string參數顯示在輸入單位後,使用「mid」和新string參數的場合下必須提供輸出單位,就算是使用預設輸出單位。 | 单行文本 | 可选 |
单个值
{{convert|值|输入单位|输出单位|四舍五入位数|...}}
范围是两个值,或三个值 (见下面清单“范围”选项):
{{convert|值1|范围|值2 |输入单位|输出单位|四舍五入位数|...}} {{convert|值1|范围|值2|修辞|值3|输入单位|输出单位|四舍五入位数|...}}
- 数值必须是标准格式(无分隔符)。模板的输出值将被格式化,并在适当情况下显示负号。要指定用逗号,改变格式{{formatnum:9,000,500|R}}(变成 9000500)。
- 可选参数,在下面的例子中,单位缩写(abbr=on),或单词美国拼法(sp=us 例如meter,中文无效),或断字(adj=on)等。
- 此模板进行多层次的调用,分析起来很麻烦。可以借助展开模板查看工具分析。
- 模板的量纲分析能力有限。因此需要由编者确认输入和输出单位的配对及兼容。不要做如下使用:尝试桶到吨的转换(参见 {{bbl to t}})。也请注意有类似名称的单位:代码
oz
盎司质量单位,如果要标识液体盎司就不要使用这个符号。代码lb
代表质量单位“磅”。力学单位“磅力”应使用lbf
符号。 - 试图转换一个单元本身,例如公里转公里,将导致模板陷入死循环。
- 各单位范围内的功能没有充分验证,需要不断的试验。
- 这个文档页面与模板功能不匹配。有关详细信息,请参见讨论页和其档案。
举例说明
单个值
输入 | 显示效果 |
---|---|
{{convert|3.21|kg|lb}} | 3.21公斤(7.1英磅) |
{{convert|3.21|kg|lb|0}} | 3.21公斤(7英磅) |
{{convert|10|kg|lb|disp=or}} | 10公斤或22英磅 |
{{convert|6|ft|5|in|m}} | 6英尺5英寸(1.96米) |
{{convert|10|mi}} | 10英里(16公里) |
{{convert|100|mpgus}} | 100英里每美制加侖(2.4公升每100公里;120英里每英制加侖) |
{{convert|120|km/h}} | 120公里每小時(75英里每小時) |
{{convert|18|°C|°F}} | 18 °C(64 °F) |
{{convert|1250|sqft|m2|lk=in|sigfig=2}} | 1,250平方英尺(120平方米) 注“lk=in”只输入单位有链接。这个例子是仅用于说明,常见的度量单位不应有链接。参见:Wp:格式手册 (链接)。 |
{{convert|20.5|m3|cuyd|lk=out|abbr=on}} | 20.5 m3(26.8 cu yd) 注“lk=in”只输出单位有链接, cu yd. |
{{convert|641|acre|ha sqmi|lk=on}} | 641英畝(259公頃;1.002平方英里) 注“lk=on”全部单位有链接。指引,共用单位没有链接,参见: Wp:格式手册 (链接)。 |
{{convert|641|acre|ha sqmi|2|lk=on}} | 641英畝(259.40公頃;1.00平方英里) 虽然640英亩等于1平方英里;四舍五入到小数点后两位641英亩等于1.00平方公里。 |
两个值
- 注:不是所有单位都能使用此效果
输入 | 显示效果 |
---|---|
{{convert|60|and|170|kg|lb}} | 60和170公斤(130和370英磅) |
{{convert|60|to|170|kg|lb}} | 60至170公斤(130至370英磅) |
{{convert|60|to(-)|170|kg|lb}} | 60至170公斤(130—370英磅) |
{{convert|60|-|170|kg|lb}} | 60—170公斤(130—370英磅) |
{{convert|41|to|50|F|C}} | 41至50 °F(5至10 °C) |
{{convert|41|-|50|F|K}} | 41—50 °F(278—283 K) |
{{convert|60|x|120|m|ft}} | 60乘120米(200乘390英尺) |
{{convert|60|+/-|10|m|ft}} | 60正負10米(197正負33英尺) |
{{convert|19|to|27|L|USgal}} | 19至27公升(5.0至7.1美制加侖) |
{{convert|5|to|7|L|USgal|abbr=mos}} | 5公升至7公升(1.3至1.8 US gal) |
{{convert|4|-|9|L|USgal|abbr=off}} | 4—9公升(1.1—2.4美制加侖) |
目前数值在以下范围的不提供转换:
- 部分英制单位和美国加仑为基础的单位。
- 除英里每加仑“mpg”和升每百公里“L100km”,以外的其他燃料消费的单位。
- 大型单位(e3,e6,e9).
- 由于转换太复杂,组合为基础的单位(ft&in, st&lb, lb&oz)(英/尺,吨/磅,磅/盎司)。
三个值
- 注:不是所有单位都能使用此效果
输入 | 显示效果 |
---|---|
{{convert|2|x|4|x|6|m|ft}} | 2乘4乘6米(6.6乘13.1乘19.7英尺) |
{{convert|2|x|4|x|6|m|ft|abbr=on}} | 2米 × 4米 × 6米(6.6英尺 × 13.1英尺 × 19.7英尺) |
{{convert|60|-|70|-|80|kg|lb}} | 60—70—80公斤(130—150—180英磅) |
{{convert|60|-|70|-|80|kg|lb|abbr=on}} | 60—70—80公斤(130—150—180磅) |
{{convert|60|to|80|or|85|m|ft}} | 60至80或85米(197至262或279英尺) |
{{convert|60|to|80|or|85|m|ft|abbr=on}} | 60至80或85米(197至262或279英尺) |
{{convert|41|to|50|to|60|F|C}} | 41至50至60 °F(5至10至16 °C) |
{{convert|41|to|50|to|60|F|C|abbr=on}} | 41至50至60 °F(5至10至16 °C) |
参数
参数 | |
---|---|
单位添加 链接 | 附上 |lk=on 所有单位开 (默认: lk=off)附上 |lk=in 输入单位有链接附上 |lk=out 输出单位有链接(格式手册建议常见的测量单位不应该链接) |
单位英文符号, 或不 | 附上 |abbr=on 显示单位符号附上 |abbr=off 显示完所有单位整的名称,显示中文名称(中文模板默认设置)附上 |abbr=in 缩写输入单位附上 |abbr=out 缩写输出单位附上 |abbr=values 不显示单位只显示数字。所以 {{convert|6|mi|abbr=values}} 显示: 6(9.7)。
|
改变“()”显示其他分隔 | 附上 |disp=comma 显示逗号, 不显示方括号/圆括号附上 |disp=or 单位之间添加“或”(or)。默认值是:disp=b 显示方括号/圆括号。 |
改变“()”自定义分隔符 | 附上 |disp=x| (begin | end) 显示 "xx (begin yy end)" 参见:例1附上 |disp=x|; 显示 "xx; yy" 参见:例2附上 |disp=x| (same as |) 显示 "xx (same as yy)". 参见:例3例1: {{convert|9|km|mi|disp=x| [|]}} 显示为:9公里 [5.6英里] (注意前[|)空格。 例2: {{convert|9|km|mi|disp=x|;}} 显示为:9公里:5.6英里 例3: {{convert|10|km|mi|disp=x|(大约|)}} 显示为:10公里 (大约6.2英里) (使用代码时注意空格)。 |
仅显示输出 | 附上 |disp=output only 只显示结果的数量及单位附上 |disp=output number only 只显示数量注:当使用“disp=output only”,单位名义仍然显示中文abbr=off或有链接lk=on。 |
前后顺序颠倒显示数据 | 附上 |disp=flip 顺序颠倒同时显示单位单元。如, {{convert|6|km|disp=flip}} 显示“3.7英里(6公里)”。 为得到符号“mi”使用abbr=in,缩写输入单元(左侧单位)。 |
只显示单位名称 | 附上 |disp=unit 显示单位名称为符号输入不为1的数值显示完整的中文单位名。 {{convert|2|cuyd|disp=unit}}显示“立方碼”。 |
显示为表格代码 | 附上 |disp=table (or |disp=tablecen)注:表中的使用,模板必须开始一个新行。 只有数字将显示,除非设置|abbr=on ,|lk=on ,|lk=in 或|lk=out 。例:here
|
四舍五入到有效数字指定的数 | 附上 |sigfig={大于零的整数} 。在摄氏或华氏温度的情况下,这是指以绝对零度的温度差异。例如,在室温下显著两个数字意味着四舍五入到几十度。
|
数值修约到5 | 附上 |disp=5 输出值将被数值修约到5的倍数。不能使用其他选项。(输出数值的个位数,二舍八入,三七做五) |
让Convert决定默认输出单位 | 跳过精确参数 (第三和第四个参数不输入) 例如:{{convert|100|km|mi}} 显示100公里(62英里)和{{convert|100|km}} 显示100公里(62英里)。
|
显示输入值分数 | {{convert|3/8|in|mm|3|abbr=on}}显示3⁄8英寸(9.525 mm)或{{convert|11+1/4|in|cm|2|abbr=on}}显示111⁄4英寸(28.58 cm)
为负数金额,使用两个减号(连字符):-11-1/4。 |
生成一个隐藏的排序键用于表格排序 | 附上 |sortable=on 生成一个隐藏的排序键,这样的排序表将正确排序。使用{{ntsh}}产生的第一个数值的排序键。它忽略任何附加值,即,如果使用6|ft|2|in 的值,它只会使用排序键6。这将导致数值排序中的数字顺序,即:5,10,15,而不是10,15,5。
|
仍在建设中的参数
仍在建设中的参数,可能无法在所有情况下正常工作 | |
---|---|
disp=5[note 1] | 输出值将被数值修约到5的倍数。不能使用其他选项。 |
disp=tablecen[note 1] | 除了显示列和数值,与disp=table类似 |
disp=comma[note 1] | 首先看重的是括号内的内容,这两个值将用逗号分隔。 |
abbr=in | 只缩写只输出单位。 |
abbr=out | 只缩写只输出单位。 |
abbr=comma[note 1] | "缩写"(删除)逗号. |
abbr=mos | 在一定范围, 输入单位缩写重复两次。不要混淆与数字格式手册. |
disp=br | 这强制换行符分开输入和输出单位。在横向宽度受限空间表格有效果。 |
disp=sqbr | 输出显示括号“[ ]” 而不是括号“( )”。 例如:55公里[89公里]。此选项可以使用直接引号,显示在编辑括号参数。见:代入|disp=x|[|] ,上面为显示括号“[ ]”的另一种方式。
|
数值修约(四舍五入)
Convert 支持四种类型四舍五入。
- 四舍五入到一个给定的精度
- 指定需要的精度用第四个未命名参数(如果“转换”参数被省略,第三无名参数;如果指定的范围,或是第五个未命名的参数;如果被指定范围和“转换”参数被省略,或第四个未命名参数;必要时要“精确”命名参数)取代。转换四舍五入采用精确位置数值1⁄10来判断。例如,如果数值是8621,参数是'-2',其结果将是8600。如果数值是234.0283043和参数为'0',结果将是234。
- 四舍五入到一个给定的数量有效数字
- 指定所需数量的有效数字
|sigfig={大于1的整数}
如上所述。
- 默认的四舍五入
- 如果没有特殊指定,将参考输入值可比精度四舍五入(小数点后的数位或一些非重大零负之前增加一个转换,如果是0.02和0.2之间的精度加1,如果是0.2和2之间不变,如果它是2和20之间精度减1,等等),或最精确的两个有效数字。温度例外,将四舍五入转换输入值。
默认四舍五入的例子 | ||
---|---|---|
输入 | 显示为 | 说明 |
{{convert|550|ft|m|0}} | 550英尺(168米) | 近似值167.64米 |
{{convert|550|ft|m}} | 550英尺(170米) | 近似值167.64米,四舍五入到170 |
{{convert|500|ft|m|0}} | 500英尺(152米) | 近似值152.4米 |
{{convert|500|ft|m}} | 500英尺(150米) | 近似值152.4米,四舍五入到150 |
支持單位
参见Module:Convert/documentation/conversion data/doc
除錯
如果使用本模板時因為提供錯誤的參數值或參數值不足等而得出類似這樣的提示字眼:[convert: 需要數字],條目就會被加入隱藏分類「Category:未獲Convert模塊承認的單位或選項」(條目以外的名字空間不受影響),將鼠標移到提示句子上顯示彈出信息框並按其指示除錯。
參見
- {{Convinfobox}} for use in infoboxes
- {{Decdeg}} for converting degrees, minutes and seconds to decimal degrees
- {{Pop density}} for converting a population and area to a density
- {{Inflation}} for calculating inflation of Consumer Price Index related prices
- {{RailGauge}} for converting rail (track) gauges
- Bug 235: Auto unit conversion
重定向
- {{換算}}
上述文档嵌入自Template:Convert/doc。 (编辑 | 历史) 编者可以在本模板的沙盒 (编辑 | 差异)和测试样例 (编辑)页面进行实验。 请在/doc子页面中添加分类。本模板的子页面。 |