def f(ediz, val):
# vea, saj, arn, pya, vek, met
# verstа, sajen, arshin, pyad, vershok, metri
#
# versta = 500 * sajen
# sajen = 3 * arshin
# arshin = 4 * pyad
# pyad = 4 * vershok
# vershok = 0.04445 * m
#
res = None
if ediz == 'vea':
res = (val, val * 500, val * 1500, val * 6000,
val * 24000, val * (24000 * 0.04445))
elif ediz == 'saj':
res = (val / 500, val, val * 3, val * 12,
val * 48, val * 48 * 0.04445)
elif ediz == 'arn':
res = (val / 1500, val / 3, val, val * 4,
val * 16, val * 16 * 0.04445)
elif ediz == 'pya':
res = (val / 6000, val / 12, val / 4, val,
val * 4, val * 4 * 0.04445)
elif ediz == 'vek':
res = (val / 24000, val / 48, val / 16,
val / 4, val, val * 0.04445)
elif ediz == 'met':
res = (val / (24000 * 0.04445), val / (48 * 0.04445),
val / (16 * 0.04445), val / (4 * 0.04445),
val / 0.04445, val)
return res
>>> f('vea', 1)
(1, 500, 1500, 6000, 24000, 1066.8000000000002)
>>> f('saj', 1)
(0.002, 1, 3, 12, 48, 2.1336000000000004)
>>> f('arn', 1)
(0.0006666666666666666, 0.3333333333333333, 1, 4, 16, 0.7112)
>>> f('pya', 1)
(0.00016666666666666666, 0.08333333333333333, 0.25, 1, 4, 0.1778)
>>> f('vek', 1)
(4.1666666666666665e-05, 0.020833333333333332, 0.0625, 0.25, 1, 0.04445)
>>> f('met', 1)
(0.0009373828271466065, 0.46869141357330324, 1.4060742407199098, 5.624296962879639, 22.497187851518557, 1)
>>>
add
со словарём и без метров
def convert_ancient(ediz, val):
# vea, saj, arn, pya, vek,
# verstа, sajen, arshin, pyad, vershok
#
# versta = 500 * sajen
# sajen = 3 * arshin
# arshin = 4 * pyad
# pyad = 4 * vershok
# vershok = 0.04445 m
#
d = {'vea': 24000 * 0.04445,
'saj': 48 * 0.04445,
'arn': 16 * 0.04445,
'pya': 4 * 0.04445,
'vek': 0.04445}
metri = val * d[ediz]
return (metri / d['vea'], metri / d['saj'],
metri / d['arn'], metri / d['pya'],
metri / d['vek'])
>>> convert_ancient('vea', 1)
(1.0, 500.0, 1500.0000000000002, 6000.000000000001, 24000.000000000004)
>>> convert_ancient('saj', 1)
(0.002, 1.0, 3.0000000000000004, 12.000000000000002, 48.00000000000001)
>>> convert_ancient('arn', 1)
(0.0006666666666666666, 0.3333333333333333, 1.0, 4.0, 16.0)
>>> convert_ancient('pya', 1)
(0.00016666666666666666, 0.08333333333333333, 0.25, 1.0, 4.0)
>>> convert_ancient('vek', 1)
(4.1666666666666665e-05, 0.020833333333333332, 0.0625, 0.25, 1.0)
>>>