我定义了以下自定义单位(伪代码):
unix_days = unix_seconds/86400;
nasa_seconds = unix_seconds - 946728000;
这让我可以直接转换
unix_seconds
至 unix_days
或转换unix_seconds
至 nasa_seconds
.但是,我不能直接转换
unix_days
返回 unix_seconds
无需编写另一个公式。同样,我无法转换
nasa_seconds
至 unix_days
不写附加公式。
是否有一个聪明的 Perl 子程序或包可以让我这样做
无需编写附加功能?更具体地说,自定义单位
转换包:
与
f(x)=x/86400
相反是 g(y)=y*86400
. unix_seconds = nasa_seconds + 946728000
(通过反函数)和 unix_days = unix_seconds/86400
,我们可以结合这些直接从 nasa_seconds
转换至 unix_days
. 我可以以不寻常的方式编写我的转换公式,如果
需要。例如,摄氏度到华氏度可以写成:
C to F: *1.8 +32
这种形式很容易反转:只需按照向后和向后的步骤进行
反向,即:
F to C: -32 /1.8
这样的事情存在吗?
最佳答案
Physics::Unit应该提供您需要的设施。
关于perl - Perl 中的对称和传递自定义单位转换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25941399/